From 14464cf0bec27f838f1649f562c9f98cc4074855 Mon Sep 17 00:00:00 2001 From: hapandar <45051871+hapandar@users.noreply.github.com> Date: Wed, 16 Oct 2019 08:55:11 -0700 Subject: [PATCH 01/54] Swagger changes to support automatic repairs on Virtual Machine Scale Sets (#7484) * Update swagger to support AutomaticRepairs for VMScaleSet * Fix unreferenced file error * Small change - Modify the description for grace period --- .../stable/2018-10-01/compute.json | 28 +++ .../CreateAScaleSetWithAutomaticRepairs.json | 231 ++++++++++++++++++ .../stable/2019-03-01/compute.json | 28 +++ .../CreateAScaleSetWithAutomaticRepairs.json | 231 ++++++++++++++++++ 4 files changed, 518 insertions(+) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json index 85ea5ce278fd..861489202f6c 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json @@ -2599,6 +2599,9 @@ }, "Create a scale set with ephemeral os disks.": { "$ref": "./examples/CreateAScaleSetWithDiffOsDisk.json" + }, + "Create a scale set with automatic repairs enabled": { + "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" } } }, @@ -6071,6 +6074,23 @@ }, "description": "Specifies the operating system settings for the virtual machine." }, + "AutomaticRepairsPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false." + }, + "gracePeriod": { + "type": "string", + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The default value is 5 minutes (PT5M)." + }, + "maxInstanceRepairsPercent": { + "type": "integer", + "description": "The percentage (capacity of scaleset) of virtual machines that will be simultaneously repaired. The default value is 20%." + } + }, + "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." + }, "NetworkInterfaceReferenceProperties": { "properties": { "primary": { @@ -7673,6 +7693,10 @@ "$ref": "#/definitions/UpgradePolicy", "description": "The upgrade policy." }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, "virtualMachineProfile": { "$ref": "#/definitions/VirtualMachineScaleSetVMProfile", "description": "The virtual machine profile." @@ -7721,6 +7745,10 @@ "$ref": "#/definitions/UpgradePolicy", "description": "The upgrade policy." }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, "virtualMachineProfile": { "$ref": "#/definitions/VirtualMachineScaleSetUpdateVMProfile", "description": "The virtual machine profile." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json new file mode 100644 index 000000000000..088fc98b5882 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2018-10-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } + } + \ No newline at end of file diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index fd304a9830f1..8aee8345774c 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -3136,6 +3136,9 @@ }, "Create a scale set with terminate scheduled events enabled.": { "$ref": "./examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json" + }, + "Create a scale set with automatic repairs enabled": { + "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" } } }, @@ -6950,6 +6953,23 @@ }, "description": "Specifies the operating system settings for the virtual machine." }, + "AutomaticRepairsPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false." + }, + "gracePeriod": { + "type": "string", + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The default value is 5 minutes (PT5M)." + }, + "maxInstanceRepairsPercent": { + "type": "integer", + "description": "The percentage (capacity of scaleset) of virtual machines that will be simultaneously repaired. The default value is 20%." + } + }, + "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." + }, "NetworkInterfaceReferenceProperties": { "properties": { "primary": { @@ -8651,6 +8671,10 @@ "$ref": "#/definitions/UpgradePolicy", "description": "The upgrade policy." }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, "virtualMachineProfile": { "$ref": "#/definitions/VirtualMachineScaleSetVMProfile", "description": "The virtual machine profile." @@ -8707,6 +8731,10 @@ "$ref": "#/definitions/UpgradePolicy", "description": "The upgrade policy." }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, "virtualMachineProfile": { "$ref": "#/definitions/VirtualMachineScaleSetUpdateVMProfile", "description": "The virtual machine profile." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json new file mode 100644 index 000000000000..bd9814f3bf3d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } + } + \ No newline at end of file From b2684c3d640365707e0c899e018cc772fc384620 Mon Sep 17 00:00:00 2001 From: Rich Franklin Date: Wed, 16 Oct 2019 12:58:45 -0700 Subject: [PATCH 02/54] Added IMDS version 2019-11-01 (#7438) --- .../2019-11-01/examples/GetAttestedData.json | 15 + .../2019-11-01/examples/GetIdentityInfo.json | 13 + .../2019-11-01/examples/GetIdentityToken.json | 20 + .../examples/GetInstanceMetadata.json | 101 +++ .../stable/2019-11-01/imds.json | 840 ++++++++++++++++++ specification/imds/data-plane/readme.md | 45 + 6 files changed, 1034 insertions(+) create mode 100644 specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetAttestedData.json create mode 100644 specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityInfo.json create mode 100644 specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityToken.json create mode 100644 specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetInstanceMetadata.json create mode 100644 specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetAttestedData.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetAttestedData.json new file mode 100644 index 000000000000..b9c31f683133 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetAttestedData.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "nonce": "abcde12345", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "encoding": "pkcs7", + "signature": "MIID2gYJKoZIhvcNAQcCoIIDyzCCA8cCAQExDzANBgkqhkiG9w0BAQsFADCBggYJKoZIhvcNAQcBoHUEc3sibm9uY2UiOiIxMTExMTExMTExIiwicGxhbiI6eyJuYW1lIjoiIiwicHJvZHVjdCI6IiIsInB1Ymxpc2hlciI6IiJ9LCJ2bUlkIjoiMDJhYWI4YTQtNzRlZi00NzZlLTgxODItZjZkMmJhNDE2NmE2In2gggI/MIICOzCCAaSgAwIBAgIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQQFADArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbTAeFw0xODExMDgxODUzMDRaFw0xODEyMDgxODUzMDNaMCsxKTAnBgNVBAMTIHRlc3RzdWJkb21haW4ubWV0YWRhdGEuYXp1cmUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEi0FVslYnUX+MneC7ERMU4ZM88z4J80r7RPgvzxCPNhXUQlWm3cmVRZMD8kKMv7brkvEsATP7Ak60/I/XEtOga4LGCvMaQa8I/MW8IhSyp2Vj015glAiV8TeUI5DuOIOS96lQvM+G7bt23swkIwVjm1u1ViTZiKKytwpY/EGqzQIDAQABo2AwXjBcBgNVHQEEVTBTgBAt3MRgJmEoUMiPy7k06cLfoS0wKzEpMCcGA1UEAxMgdGVzdHN1YmRvbWFpbi5tZXRhZGF0YS5henVyZS5jb22CEEFrBY1zd+aASShVyN0KzN0wDQYJKoZIhvcNAQEEBQADgYEAd87qiZnRlGIFQ5IEcL/A7ru23WSQAOBsNPt70Fg1GtaEHcYshKUJFhGwXOgZ11cY5wRfrSvEKuzvhAeIZwkvzkBjC04g8sRrjN5leLY5CsKzQhjN52TUMsHhqTM58tfAnICeTddQwn6LOgfqtYH5WO+F/VbFCwPstYUqjmQEYAoxgegwgeUCAQEwPzArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbQIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQsFADANBgkqhkiG9w0BAQEFAASBgCbkRKmQ1MdWZPVOrX7ZBKHQUWPFrQQNdjk3KB67GkY0W0Taxut4K7D2PmiflVEwxB92pTbaZZr/dldu1k1ab1YamHcVYdgZgxIkoOWohGR0ym8oL9JHjFMEqHUbEPtDwE8X+djtDd8TVdb6LYe77IXmz/VaX4whuejlSvQXjaL" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityInfo.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityInfo.json new file mode 100644 index 000000000000..8477c457a6f3 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityInfo.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "tenantId": "abd8daee-d393-4239-9377-883adda3d40f" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityToken.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityToken.json new file mode 100644 index 000000000000..3629a220407e --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetIdentityToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "Metadata": "true", + "resource": "https://vault.azure.net" + }, + "responses": { + "200": { + "body": { + "access_token": "dummytoken", + "client_id": "be5947ed-3560-4afe-9504-59967a63f810", + "expires_in": "3599", + "expires_on": "1541705014", + "ext_expires_in": "262800", + "not_before": "1508961830", + "resource": "https://va" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetInstanceMetadata.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetInstanceMetadata.json new file mode 100644 index 000000000000..2d3d8ce5bb14 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/examples/GetInstanceMetadata.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "compute": { + "azEnvironment": "AZUREPUBLICCLOUD", + "location": "westus", + "name": "examplevmname", + "offer": "Windows", + "osType": "linux", + "placementGroupId": "f67c14ab-e92c-408c-ae2d-da15866ec79a", + "plan": { + "name": "planName", + "product": "planProduct", + "publisher": "planPublisher" + }, + "platformFaultDomain": "36", + "platformUpdateDomain": "42", + "publicKeys": [ + { + "keyData": "ssh-rsa 0", + "path": "/home/user/.ssh/authorized_keys0" + }, + { + "keyData": "ssh-rsa 1", + "path": "/home/user/.ssh/authorized_keys1" + } + ], + "publisher": "RDFE-Test-Microsoft-Windows-Server-Group", + "resourceGroupName": "macikgo-test-may-23", + "resourceId": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/virtualMachines/examplevmname", + "sku": "Windows-Server-2012-R2-Datacenter", + "storageProfile": { + "dataDisks": [ + { + "caching": "None", + "createOption": "Empty", + "diskSizeGB": "1024", + "image": { + "uri": "" + }, + "lun": "0", + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampledatadiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampledatadiskname", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + ], + "imageReference": { + "id": "", + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "diskSizeGB": "30", + "diffDiskSettings": { + "option": "Local" + }, + "encryptionSettings": { + "enabled": "false" + }, + "image": { + "uri": "" + }, + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampleosdiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampleosdiskname", + "osType": "Linux", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + }, + "subscriptionId": "8d10da13-8125-4ba9-a717-bf7490507b3d", + "tags": "baz:bash;foo:bar", + "version": "15.05.22", + "vmId": "02aab8a4-74ef-476e-8182-f6d2ba4166a6", + "vmScaleSetName": "crpteste9vflji9", + "vmSize": "Standard_A3", + "zone": "" + } + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json new file mode 100644 index 000000000000..a7b4b821abea --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json @@ -0,0 +1,840 @@ +{ + "swagger": "2.0", + "info": { + "title": "InstanceMetadataClient", + "description": "The Azure Instance Metadata Client", + "version": "2019-11-01" + }, + "host": "169.254.169.254", + "basePath": "/metadata", + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "basic_auth": { + "type": "basic", + "description": "A Basic authentication flow" + } + }, + "paths": { + "/instance": { + "get": { + "operationId": "Instances_GetMetadata", + "description": "Get Instance Metadata for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Instance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Instance Metadata for the VM": { + "$ref": "./examples/GetInstanceMetadata.json" + } + } + } + }, + "/attested/document": { + "get": { + "operationId": "Attested_GetDocument", + "description": "Get Attested Data for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "nonce", + "in": "query", + "required": false, + "type": "string", + "description": "This is a string of up to 32 random alphanumeric characters." + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AttestedData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Attested Data for the VM": { + "$ref": "./examples/GetAttestedData.json" + } + } + } + }, + "/identity/oauth2/token": { + "get": { + "tags": [ + "Get token" + ], + "description": "Get a Token from Azure AD", + "operationId": "Identity_GetToken", + "produces": [ + "application/json" + ], + "security": [ + {}, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "name": "resource", + "in": "query", + "type": "string", + "description": "This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource.", + "required": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "client_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id.", + "required": false + }, + { + "name": "object_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id.", + "required": false + }, + { + "name": "msi_res_id", + "in": "query", + "type": "string", + "description": "This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id.", + "required": false + }, + { + "name": "authority", + "in": "query", + "type": "string", + "description": "This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used.", + "required": false + }, + { + "name": "bypass_cache", + "in": "query", + "type": "string", + "enum": [ + "true" + ], + "description": "If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.", + "required": false, + "x-ms-enum": { + "name": "BypassCache", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityTokenResponse" + } + }, + "default": { + "headers": { + "Www-Authenticate": { + "type": "string", + "description": "This is the response header containing a challenge for the Basic scheme with a realm value" + } + }, + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Token for the VM": { + "$ref": "./examples/GetIdentityToken.json" + } + } + } + }, + "/identity/info": { + "get": { + "tags": [ + "Get metadata information" + ], + "description": "Get information about AAD Metadata", + "operationId": "Identity_GetInfo", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityInfoResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Info for the VM": { + "$ref": "./examples/GetIdentityInfo.json" + } + } + } + } + }, + "definitions": { + "Compute": { + "type": "object", + "properties": { + "azEnvironment": { + "type": "string", + "description": "This is the name of the environment in which the VM is running." + }, + "location": { + "type": "string", + "description": "This is the Azure Region in which the VM is running." + }, + "name": { + "type": "string", + "description": "This is the name of the VM." + }, + "offer": { + "type": "string", + "description": "This is the offer information for the VM image. This value is only present for images deployed from the Azure Image Gallery." + }, + "osType": { + "type": "string", + "description": "This value indicates the type of OS the VM is running, either Linux or Windows." + }, + "placementGroupId": { + "type": "string", + "description": "This is the placement group of your Virtual Machine Scale Set." + }, + "plan": { + "type": "object", + "description": "This contains the data about the plan.", + "$ref": "#/definitions/PlanProperties" + }, + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKeysProperties" + }, + "description": "This is information about the SSH certificate" + }, + "platformFaultDomain": { + "type": "string", + "description": "This is the fault domain in which the VM." + }, + "platformUpdateDomain": { + "type": "string", + "description": "This is the update domain in which the VM." + }, + "provider": { + "type": "string", + "description": "This is the provider of the VM." + }, + "publisher": { + "type": "string", + "description": "This is the publisher of the VM image." + }, + "resourceGroupName": { + "type": "string", + "description": "This is the resource group for the VM." + }, + "resourceId": { + "type": "string", + "description": "This is the fully qualified ID for the VM." + }, + "sku": { + "type": "string", + "description": "This is the specific SKU for the VM image." + }, + "storageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "$ref": "#/definitions/StorageProfile" + }, + "subscriptionId": { + "type": "string", + "description": "This is the Azure subscription for the VM." + }, + "tags": { + "type": "string", + "description": "This is the list of tags for your VM." + }, + "version": { + "type": "string", + "description": "This is the version of the VM image." + }, + "vmId": { + "type": "string", + "description": "This is the unique identifier for the VM." + }, + "vmScaleSetName": { + "type": "string", + "description": "This is the resource name of the VMSS." + }, + "vmSize": { + "type": "string", + "description": "This is the size of the VM." + }, + "zone": { + "type": "string", + "description": "This is the availability zone of the VM." + } + }, + "description": "Compute Metadata" + }, + "Network": { + "type": "object", + "properties": { + "interface": { + "type": "array", + "description": "This contains data about the network interface.", + "items": { + "type": "object", + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "description": "Network Metadata" + }, + "NetworkInterface": { + "type": "object", + "description": "This contains data about the network interface.", + "properties": { + "ipv4": { + "type": "object", + "description": "This contains the IPv4 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv4 properties.", + "$ref": "#/definitions/Ipv4Properties" + } + }, + "subnet": { + "type": "array", + "description": "This is the subnet", + "items": { + "type": "object", + "description": "This contains the subnet properties.", + "$ref": "#/definitions/SubnetProperties" + } + } + } + }, + "ipv6": { + "type": "object", + "description": "This contains the IPv6 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv6 properties.", + "$ref": "#/definitions/Ipv6Properties" + } + } + } + }, + "macAddress": { + "type": "string", + "description": "This is the MAC address of the interface." + } + } + }, + "PlanProperties": { + "type": "object", + "description": "This contains the data about the plan.", + "properties": { + "name": { + "type": "string", + "description": "This is the Plan ID." + }, + "publisher": { + "type": "string", + "description": "This is the publisher ID." + }, + "product": { + "type": "string", + "description": "This is the product of the image from the Marketplace." + } + } + }, + "PublicKeysProperties": { + "type": "object", + "description": "This contains the data about the public key.", + "properties": { + "path": { + "type": "string", + "description": "This specifies the full path on the VM where the SSH public key is stored." + }, + "keyData": { + "type": "string", + "description": "This is the SSH public key certificate used to authenticate with the VM." + } + } + }, + "Ipv4Properties": { + "type": "object", + "description": "This contains the IPv4 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IP address assigned to the interface." + }, + "publicIpAddress": { + "type": "string", + "description": "This is the public IP address assigned to the interface." + } + } + }, + "Ipv6Properties": { + "type": "object", + "description": "This contains the IPv6 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IPv6 address assigned to the interface." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "This contains the properties of the subnet.", + "properties": { + "address": { + "type": "string", + "description": "This is the address range of the subnet." + }, + "prefix": { + "type": "string", + "description": "This is the prefix of the subnet." + } + } + }, + "StorageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "properties": { + "imageReference": { + "type": "object", + "$ref": "#/definitions/ImageReference", + "description": "Image information" + }, + "osDisk": { + "type": "object", + "$ref": "#/definitions/OsDisk", + "description": "OS disk information" + }, + "dataDisks": { + "type": "array", + "description": "Data disk information", + "items": { + "type": "object", + "description": "This contains information about the data disk.", + "$ref": "#/definitions/DataDisk" + } + } + } + }, + "ImageReference": { + "type": "object", + "description": "This contains information about the OS image.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "offer": { + "type": "string", + "description": "This is the offer of the platform or marketplace image." + }, + "publisher": { + "type": "string", + "description": "This is the image publisher." + }, + "sku": { + "type": "string", + "description": "This is the image SKU." + }, + "version": { + "type": "string", + "description": "This is the version of the platform or marketplace image." + } + } + }, + "OsDisk": { + "type": "object", + "description": "This contains information about the OS disk used by the VM.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "$ref": "#/definitions/DiffDiskSettings" + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "encryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "$ref": "#/definitions/EncryptionSettings" + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "osType": { + "type": "string", + "description": "This is the type of OS included in the disk." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "DataDisk": { + "type": "object", + "description": "This contains information about the data disk.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "lun": { + "type": "string", + "description": "This is the logical unit number of the disk." + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "EncryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "properties": { + "enabled": { + "type": "string", + "description": "This specifies whether or not disk encryption is enabled on the VM." + } + } + }, + "DiffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "properties": { + "option": { + "type": "string", + "description": "This specifies the ephemeral disk settings." + } + } + }, + "DiskImage": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ManagedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "storageAccountType": { + "type": "string", + "description": "This is the storage account type for the managed disk." + } + } + }, + "VirtualHardDisk": { + "type": "object", + "description": "This is the virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ApplicationResponse": { + "type": "string", + "description": "This is a binary string containing the application." + }, + "Instance": { + "type": "object", + "description": "This is the response from the Instance_GetMetadata operation.", + "properties": { + "compute": { + "$ref": "#/definitions/Compute", + "description": "Compute Metadata" + }, + "network": { + "$ref": "#/definitions/Network", + "description": "Network Metadata" + } + } + }, + "AttestedData": { + "type": "object", + "description": "This is the response from the Attested_GetDocument operation.", + "properties": { + "signature": { + "type": "string", + "description": "This is the encoded string containing the VM ID, SKU, plan information, public key, timestamp, and nonce value." + }, + "encoding": { + "type": "string", + "description": "This is the encoding scheme of the signature." + } + } + }, + "ErrorResponse": { + "description": "This is the response from an operation in the case an error occurs.", + "type": "object", + "properties": { + "error": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "IdentityErrorResponse": { + "type": "object", + "description": "This is the response from an Identity operation in the case an error occurs.", + "properties": { + "error": { + "type": "string", + "description": "Error code", + "enum": [ + "invalid_request", + "unauthorized_client", + "access_denied", + "unsupported_response_type", + "invalid_scope", + "server_error", + "service_unavailable", + "bad_request", + "forbidden", + "not_found", + "method_not_allowed", + "too_many_requests" + ], + "x-ms-enum": { + "name": "Error", + "modelAsString": true + } + }, + "error_description": { + "type": "string", + "description": "Error message indicating why the operation failed." + } + } + }, + "IdentityTokenResponse": { + "type": "object", + "description": "This is the response from the Identity_GetToken operation.", + "properties": { + "access_token": { + "type": "string", + "description": "This is the requested access token. The app can use this token to authenticate to the sink resource." + }, + "expires_in": { + "type": "string", + "description": "This is how long the access token is valid (in seconds)." + }, + "expires_on": { + "type": "string", + "description": "This is the time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time. This value is used to determine the lifetime of cached tokens." + }, + "ext_expires_in": { + "type": "string", + "description": "This indicates the extended lifetime of the token (in seconds)." + }, + "not_before": { + "type": "string", + "description": "This is the time when the access token becomes effective. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time." + }, + "resource": { + "type": "string", + "description": "This is the app ID URI of the sink resource." + }, + "token_type": { + "type": "string", + "description": "This indicates the token type value." + }, + "client_id": { + "type": "string", + "description": "This is the client_id specified in the request, if any." + }, + "object_id": { + "type": "string", + "description": "This is the object_id specified in the request, if any." + }, + "msi_res_id": { + "type": "string", + "description": "This is the msi_res_id specified in the request, if any." + } + } + }, + "IdentityInfoResponse": { + "type": "object", + "description": "This is the response from the Identity_GetInfo operation.", + "properties": { + "tenantId": { + "type": "string", + "description": "This is the AAD tenantId of the identity of the system assigned managed identity." + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "type": "string", + "enum": [ + "2018-10-01" + ], + "description": "This is the API version to use.", + "required": true, + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + } + }, + "MetadataParameter": { + "name": "Metadata", + "in": "header", + "type": "string", + "enum": [ + "true" + ], + "description": "This must be set to 'true'.", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/imds/data-plane/readme.md b/specification/imds/data-plane/readme.md index 0c7f9e359b50..8202bc8b0956 100644 --- a/specification/imds/data-plane/readme.md +++ b/specification/imds/data-plane/readme.md @@ -98,6 +98,15 @@ input-file: - Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json ``` +### Tag: package-2019-11-01 + +These settings apply only when `--tag=package-2019-11-01` is specified on the command line. + +```yaml $(tag) == 'package-2019-11-01' +input-file: +- Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json +``` + ## Suppression ``` yaml directive: @@ -234,6 +243,22 @@ input-file: - $.definitions.IdentityTokenResponse.properties.object_id - $.definitions.IdentityTokenResponse.properties.msi_res_id - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description ``` --- @@ -250,6 +275,20 @@ csharp: clear-output-folder: true ``` +## Java + +These settings apply only when --java is specified on the command line. Please also specify --azure-libraries-for-java-folder=. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.imds + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/azure-imds +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -258,6 +297,11 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-node + - repo: azure-sdk-for-ruby ``` ## Multi-API/Profile support for AutoRest v3 generators @@ -280,6 +324,7 @@ input-file: - $(this-folder)/Microsoft.InstanceMetadataService/stable/2019-06-04/imds.json - $(this-folder)/Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json - $(this-folder)/Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json + - $(this-folder)/Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json ``` From b988ead48d9661472b4bebd41ea9338d512effdc Mon Sep 17 00:00:00 2001 From: TinaHu1 <51737887+TinaHu1@users.noreply.github.com> Date: Thu, 17 Oct 2019 09:29:20 +0800 Subject: [PATCH 03/54] [DataFactory]Add CompressionCodec property for ORC Dataset (#7452) --- .../stable/2018-06-01/entityTypes/Dataset.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index fa9725904bce..4331209428ba 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -770,6 +770,18 @@ "location": { "$ref": "#/definitions/DatasetLocation", "description": "The location of the ORC data storage." + }, + "orcCompressionCodec": { + "type": "string", + "enum": [ + "none", + "zlib", + "snappy" + ], + "x-ms-enum": { + "name": "orcCompressionCodec", + "modelAsString": true + } } }, "required": [ From 93db53b6cecf76ec2f3c3192d06ef140ee1d9197 Mon Sep 17 00:00:00 2001 From: Yung-Shin Lin Date: Wed, 16 Oct 2019 18:35:01 -0700 Subject: [PATCH 04/54] Update for Layout Analysis --- .../preview/v2.0/FormRecognizer.json | 90 +++ .../preview/v2.0/examples/LayoutBatch.json | 16 + .../v2.0/examples/LayoutBatchResult.json | 543 ++++++++++++++++++ 3 files changed, 649 insertions(+) create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index b83cd6c5a204..9197416f6ecc 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -395,6 +395,96 @@ } } } + }, + "/layout/analyze": { + "post": { + "summary": "Analyze Layout", + "description": "Extract text and layout information from a given document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png' or 'image/tiff'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeLayoutAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "language", + "in": "query", + "description": "The IETF RFC 5646 language code of the text to be detected in the image. \"en\" (English) and \"es\" (Spanish) are supported.", + "required": true, + "$ref": "#/definitions/Language" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze Layout": { + "$ref": "./examples/LayoutBatch.json" + } + } + } + }, + "/layout/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Layout Result", + "operationId": "GetAnalyzeLayoutResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze layout result": { + "$ref": "./examples/LayoutBatchResult.json" + } + } + } } }, "definitions": { diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json new file mode 100644 index 000000000000..14b21f9b6342 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.0-preview/layout/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json new file mode 100644 index 000000000000..7f887d3a7fb7 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{model Id}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body":{ + "status": "Succeeded", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:21Z", + "analyzeResult": { + "version": "2.0-preview", + "readResults": [ + { + "page": 1, + "angle": 0.22, + "width": 1265, + "height": 300, + "unit": "pixel", + "language": "en", + "lines": [ + { + "boundingBox": [ + 91, + 69, + 223, + 69, + 223, + 91, + 91, + 90 + ], + "text": "Student List", + "words": [ + { + "boundingBox": [ + 92, + 69, + 179, + 70, + 178, + 90, + 92, + 91 + ], + "text": "Student", + "confidence": 0.869 + }, + { + "boundingBox": [ + 183, + 70, + 222, + 70, + 222, + 91, + 183, + 90 + ], + "text": "List", + "confidence": 0.959 + } + ] + }, + { + "boundingBox": [ + 105, + 125, + 170, + 124, + 171, + 144, + 105, + 145 + ], + "text": "Name", + "words": [ + { + "boundingBox": [ + 105, + 125, + 171, + 125, + 170, + 145, + 105, + 145 + ], + "text": "Name", + "confidence": 0.959 + } + ] + }, + { + "boundingBox": [ + 481, + 124, + 523, + 125, + 523, + 147, + 481, + 146 + ], + "text": "Age", + "words": [ + { + "boundingBox": [ + 482, + 124, + 522, + 125, + 522, + 147, + 481, + 146 + ], + "text": "Age", + "confidence": 0.958 + } + ] + }, + { + "boundingBox": [ + 855, + 124, + 932, + 123, + 933, + 144, + 856, + 144 + ], + "text": "School", + "words": [ + { + "boundingBox": [ + 857, + 125, + 933, + 124, + 933, + 145, + 857, + 145 + ], + "text": "School", + "confidence": 0.95 + } + ] + }, + { + "boundingBox": [ + 106, + 158, + 157, + 159, + 156, + 180, + 105, + 179 + ], + "text": "John", + "words": [ + { + "boundingBox": [ + 104, + 158, + 156, + 159, + 156, + 180, + 104, + 179 + ], + "text": "John", + "confidence": 0.958 + } + ] + }, + { + "boundingBox": [ + 481, + 158, + 509, + 159, + 509, + 178, + 482, + 178 + ], + "text": "15", + "words": [ + { + "boundingBox": [ + 484, + 158, + 509, + 158, + 509, + 178, + 484, + 178 + ], + "text": "15", + "confidence": 0.959 + } + ] + }, + { + "boundingBox": [ + 857, + 157, + 1000, + 158, + 1000, + 179, + 857, + 179 + ], + "text": "Smith School", + "words": [ + { + "boundingBox": [ + 858, + 158, + 920, + 159, + 920, + 179, + 858, + 180 + ], + "text": "Smith", + "confidence": 0.959 + }, + { + "boundingBox": [ + 927, + 159, + 1000, + 158, + 999, + 180, + 927, + 179 + ], + "text": "School", + "confidence": 0.959 + } + ] + }, + { + "boundingBox": [ + 104, + 192, + 155, + 192, + 155, + 211, + 103, + 212 + ], + "text": "Jane", + "words": [ + { + "boundingBox": [ + 105, + 192, + 155, + 191, + 155, + 211, + 105, + 212 + ], + "text": "Jane", + "confidence": 0.959 + } + ] + }, + { + "boundingBox": [ + 482, + 192, + 509, + 193, + 509, + 211, + 481, + 211 + ], + "text": "16", + "words": [ + { + "boundingBox": [ + 484, + 192, + 509, + 192, + 509, + 211, + 484, + 211 + ], + "text": "16", + "confidence": 0.959 + } + ] + }, + { + "boundingBox": [ + 858, + 191, + 993, + 191, + 993, + 214, + 858, + 215 + ], + "text": "Mary School", + "words": [ + { + "boundingBox": [ + 859, + 192, + 916, + 192, + 915, + 215, + 858, + 215 + ], + "text": "Mary", + "confidence": 0.959 + }, + { + "boundingBox": [ + 920, + 191, + 993, + 192, + 993, + 215, + 920, + 215 + ], + "text": "School", + "confidence": 0.959 + } + ] + } + ] + } + ], + "pageResults": [ + { + "page": 1, + "tables": [ + { + "rows": 4, + "columns": 3, + "cells": [ + { + "rowIndex": 0, + "columnIndex": 0, + "text": "Name", + "boundingBox": [ + 105, + 125, + 171, + 125, + 171, + 145, + 105, + 145 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/1/words/0" + ] + }, + { + "rowIndex": 0, + "columnIndex": 1, + "text": "Age", + "boundingBox": [ + 481, + 124, + 522, + 124, + 522, + 147, + 481, + 147 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/2/words/0" + ] + }, + { + "rowIndex": 0, + "columnIndex": 2, + "text": "School", + "boundingBox": [ + 857, + 124, + 933, + 124, + 933, + 144, + 857, + 144 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/3/words/0" + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "text": "John", + "boundingBox": [ + 105, + 158, + 156, + 158, + 156, + 180, + 105, + 180 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/4/words/0" + ] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "text": "15", + "boundingBox": [ + 484, + 158, + 509, + 158, + 509, + 178, + 484, + 178 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/5/words/0" + ] + }, + { + "rowIndex": 1, + "columnIndex": 2, + "text": "Smith School", + "boundingBox": [ + 858, + 158, + 1000, + 158, + 1000, + 179, + 858, + 179 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/6/words/0", + "#/analyzeResult/readResults/0/lines/6/words/1" + ] + }, + { + "rowIndex": 2, + "columnIndex": 0, + "text": "Jane", + "boundingBox": [ + 105, + 192, + 155, + 192, + 155, + 212, + 105, + 212 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/7/words/0" + ] + }, + { + "rowIndex": 2, + "columnIndex": 1, + "text": "16", + "boundingBox": [ + 484, + 192, + 509, + 192, + 509, + 211, + 484, + 211 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/8/words/0" + ] + }, + { + "rowIndex": 2, + "columnIndex": 2, + "text": "Mary School", + "boundingBox": [ + 858, + 191, + 993, + 191, + 993, + 215, + 858, + 215 + ], + "elements": [ + "#/analyzeResult/readResults/0/lines/9/words/0", + "#/analyzeResult/readResults/0/lines/9/words/1" + ] + } + ] + } + ] + } + ] + } + } + } + } +} \ No newline at end of file From 1efbec965dc8b5cf718d58bc4f4d122a4c0d9cab Mon Sep 17 00:00:00 2001 From: Yung-Shin Lin Date: Wed, 16 Oct 2019 19:15:00 -0700 Subject: [PATCH 05/54] Update result for layout --- .../preview/v2.0/FormRecognizer.json | 70 ++- .../preview/v2.0/examples/LayoutBatch.json | 1 + .../v2.0/examples/LayoutBatchResult.json | 532 +----------------- 3 files changed, 76 insertions(+), 527 deletions(-) diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index 9197416f6ecc..7d769a16c505 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -417,7 +417,7 @@ "in": "query", "description": "The IETF RFC 5646 language code of the text to be detected in the image. \"en\" (English) and \"es\" (Spanish) are supported.", "required": true, - "$ref": "#/definitions/Language" + "type": "string" }, { "$ref": "#/parameters/FileStream" @@ -469,7 +469,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/AnalyzeOperationResult" + "$ref": "#/definitions/AnalyzeLayoutOperationResult" } }, "default": { @@ -962,6 +962,72 @@ } } }, + "AnalyzeLayoutOperationResult": { + "description": "Status and result of the queued analyze layout operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) the analyze operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status is last updated.", + "type": "string", + "x-nullable": false + }, + "analyzeResult": { + "description": "Results of the analyze layout operation.", + "$ref": "#/definitions/AnalyzeLayoutResult" + } + } + }, + "AnalyzeLayoutResult": { + "description": "Analyze operation result.", + "type": "object", + "required": [ + "version", + "readResults" + ], + "properties": { + "version": { + "description": "Version of schema used for this result.", + "type": "string" + }, + "readResults": { + "description": "Text extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadResult" + } + }, + "pageResults": { + "description": "Page-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/PageResult" + } + }, + "errors": { + "description": "List of errors reported during the analyze operation.", + "type": "array", + "items": { + "$ref": "#/definitions/FormOperationError" + } + } + } + }, "Language": { "description": "Language code", "type": "string", diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json index 14b21f9b6342..80a1ca6ad32a 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatch.json @@ -3,6 +3,7 @@ "endpoint": "{endpoint}", "Content-Type": "application/json", "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", "body": { } }, diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json index 7f887d3a7fb7..55c72ff101f6 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json @@ -10,534 +10,16 @@ "responses": { "200": { "body":{ - "status": "Succeeded", + "status": "running", "createdDateTime": "2019-05-01T10:53:21Z", - "lastUpdatedDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", "analyzeResult": { - "version": "2.0-preview", - "readResults": [ - { - "page": 1, - "angle": 0.22, - "width": 1265, - "height": 300, - "unit": "pixel", - "language": "en", - "lines": [ - { - "boundingBox": [ - 91, - 69, - 223, - 69, - 223, - 91, - 91, - 90 - ], - "text": "Student List", - "words": [ - { - "boundingBox": [ - 92, - 69, - 179, - 70, - 178, - 90, - 92, - 91 - ], - "text": "Student", - "confidence": 0.869 - }, - { - "boundingBox": [ - 183, - 70, - 222, - 70, - 222, - 91, - 183, - 90 - ], - "text": "List", - "confidence": 0.959 - } - ] - }, - { - "boundingBox": [ - 105, - 125, - 170, - 124, - 171, - 144, - 105, - 145 - ], - "text": "Name", - "words": [ - { - "boundingBox": [ - 105, - 125, - 171, - 125, - 170, - 145, - 105, - 145 - ], - "text": "Name", - "confidence": 0.959 - } - ] - }, - { - "boundingBox": [ - 481, - 124, - 523, - 125, - 523, - 147, - 481, - 146 - ], - "text": "Age", - "words": [ - { - "boundingBox": [ - 482, - 124, - 522, - 125, - 522, - 147, - 481, - 146 - ], - "text": "Age", - "confidence": 0.958 - } - ] - }, - { - "boundingBox": [ - 855, - 124, - 932, - 123, - 933, - 144, - 856, - 144 - ], - "text": "School", - "words": [ - { - "boundingBox": [ - 857, - 125, - 933, - 124, - 933, - 145, - 857, - 145 - ], - "text": "School", - "confidence": 0.95 - } - ] - }, - { - "boundingBox": [ - 106, - 158, - 157, - 159, - 156, - 180, - 105, - 179 - ], - "text": "John", - "words": [ - { - "boundingBox": [ - 104, - 158, - 156, - 159, - 156, - 180, - 104, - 179 - ], - "text": "John", - "confidence": 0.958 - } - ] - }, - { - "boundingBox": [ - 481, - 158, - 509, - 159, - 509, - 178, - 482, - 178 - ], - "text": "15", - "words": [ - { - "boundingBox": [ - 484, - 158, - 509, - 158, - 509, - 178, - 484, - 178 - ], - "text": "15", - "confidence": 0.959 - } - ] - }, - { - "boundingBox": [ - 857, - 157, - 1000, - 158, - 1000, - 179, - 857, - 179 - ], - "text": "Smith School", - "words": [ - { - "boundingBox": [ - 858, - 158, - 920, - 159, - 920, - 179, - 858, - 180 - ], - "text": "Smith", - "confidence": 0.959 - }, - { - "boundingBox": [ - 927, - 159, - 1000, - 158, - 999, - 180, - 927, - 179 - ], - "text": "School", - "confidence": 0.959 - } - ] - }, - { - "boundingBox": [ - 104, - 192, - 155, - 192, - 155, - 211, - 103, - 212 - ], - "text": "Jane", - "words": [ - { - "boundingBox": [ - 105, - 192, - 155, - 191, - 155, - 211, - 105, - 212 - ], - "text": "Jane", - "confidence": 0.959 - } - ] - }, - { - "boundingBox": [ - 482, - 192, - 509, - 193, - 509, - 211, - 481, - 211 - ], - "text": "16", - "words": [ - { - "boundingBox": [ - 484, - 192, - 509, - 192, - 509, - 211, - 484, - 211 - ], - "text": "16", - "confidence": 0.959 - } - ] - }, - { - "boundingBox": [ - 858, - 191, - 993, - 191, - 993, - 214, - 858, - 215 - ], - "text": "Mary School", - "words": [ - { - "boundingBox": [ - 859, - 192, - 916, - 192, - 915, - 215, - 858, - 215 - ], - "text": "Mary", - "confidence": 0.959 - }, - { - "boundingBox": [ - 920, - 191, - 993, - 192, - 993, - 215, - 920, - 215 - ], - "text": "School", - "confidence": 0.959 - } - ] - } - ] - } - ], - "pageResults": [ - { - "page": 1, - "tables": [ - { - "rows": 4, - "columns": 3, - "cells": [ - { - "rowIndex": 0, - "columnIndex": 0, - "text": "Name", - "boundingBox": [ - 105, - 125, - 171, - 125, - 171, - 145, - 105, - 145 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/1/words/0" - ] - }, - { - "rowIndex": 0, - "columnIndex": 1, - "text": "Age", - "boundingBox": [ - 481, - 124, - 522, - 124, - 522, - 147, - 481, - 147 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/2/words/0" - ] - }, - { - "rowIndex": 0, - "columnIndex": 2, - "text": "School", - "boundingBox": [ - 857, - 124, - 933, - 124, - 933, - 144, - 857, - 144 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/3/words/0" - ] - }, - { - "rowIndex": 1, - "columnIndex": 0, - "text": "John", - "boundingBox": [ - 105, - 158, - 156, - 158, - 156, - 180, - 105, - 180 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/4/words/0" - ] - }, - { - "rowIndex": 1, - "columnIndex": 1, - "text": "15", - "boundingBox": [ - 484, - 158, - 509, - 158, - 509, - 178, - 484, - 178 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/5/words/0" - ] - }, - { - "rowIndex": 1, - "columnIndex": 2, - "text": "Smith School", - "boundingBox": [ - 858, - 158, - 1000, - 158, - 1000, - 179, - 858, - 179 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/6/words/0", - "#/analyzeResult/readResults/0/lines/6/words/1" - ] - }, - { - "rowIndex": 2, - "columnIndex": 0, - "text": "Jane", - "boundingBox": [ - 105, - 192, - 155, - 192, - 155, - 212, - 105, - 212 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/7/words/0" - ] - }, - { - "rowIndex": 2, - "columnIndex": 1, - "text": "16", - "boundingBox": [ - 484, - 192, - 509, - 192, - 509, - 211, - 484, - 211 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/8/words/0" - ] - }, - { - "rowIndex": 2, - "columnIndex": 2, - "text": "Mary School", - "boundingBox": [ - 858, - 191, - 993, - 191, - 993, - 215, - 858, - 215 - ], - "elements": [ - "#/analyzeResult/readResults/0/lines/9/words/0", - "#/analyzeResult/readResults/0/lines/9/words/1" - ] - } - ] - } - ] - } - ] + "version":"v2.0", + "readResults":[], + "pageResults":[], + "errors":[] } - } + } } } } \ No newline at end of file From 8634e08c455edb1ecf7871f72c3adfffe7f7dfd1 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Wed, 16 Oct 2019 22:21:21 -0400 Subject: [PATCH 06/54] Adding readme.cli.md file for peering (#7419) * adding azure cli readme files * updated readme.cli * proper regexes * fix --- .../peering/resource-manager/readme.cli.md | 24 +++++++++++++++++++ .../peering/resource-manager/readme.md | 5 ++++ 2 files changed, 29 insertions(+) create mode 100644 specification/peering/resource-manager/readme.cli.md diff --git a/specification/peering/resource-manager/readme.cli.md b/specification/peering/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c66182e19bdc --- /dev/null +++ b/specification/peering/resource-manager/readme.cli.md @@ -0,0 +1,24 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: peering + cmd-override: + "^.*[/]peerasns[/].*$": "peering asn" + "^.*[/]peerings[/].*$": "peering" + "^.*[/]peeringservices([/][^/]*)?$": "peering service" + "^.*[/]peeringservices[/].*prefixes.*$": "peering service prefix" + namespace: azure.mgmt.peering + package-name: azure-mgmt-peering + debug: true + adjustments: + "/sku": "Sku*/" + "/properties/exchange": "Exchange*/" + "/properties/direct": "Direct*/" + "/properties/peercontactinfo": "*/" + + test-setup: + - name: Create or Update a service with all parameters +``` diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index 3f1b0c0f34a5..95972178030f 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -81,6 +81,11 @@ See configuration in [readme.csharp.md](./readme.csharp.md) ## Go See configuration in [readme.go.md](./readme.go.md) + +## CLI + +See configuration in [readme.cli.md](./readme.cli.md) + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. From 9baf9b61f4c71337b457dd032e94d06b933eca32 Mon Sep 17 00:00:00 2001 From: Sandip Shahane Date: Wed, 16 Oct 2019 20:08:19 -0700 Subject: [PATCH 07/54] Adding PolicyInsights policyStates api version 2019-10-01. (#7505) * adding a baseline folder for PolicyInsights 2019-10-01 * fixing validation errors. * fix go build error * Added spec json files for other resources to be added to the package. Also updated policyStates.json as per latest API changes. * Added new columns in the examples. Also, Removed metadata path. --- .../PolicyStates_FilterAndAggregateOnly.json | 25 + ...yStates_FilterAndGroupByWithAggregate.json | 40 + ...ates_FilterAndGroupByWithoutAggregate.json | 37 + .../PolicyStates_FilterAndMultipleGroups.json | 111 ++ .../examples/PolicyStates_ListOperations.json | 41 + ...olicyStates_QueryManagementGroupScope.json | 80 + ...PolicyStates_QueryNestedResourceScope.json | 79 + ...sourceGroupLevelPolicyAssignmentScope.json | 82 + .../PolicyStates_QueryResourceGroupScope.json | 80 + .../PolicyStates_QueryResourceScope.json | 79 + ...rceScopeExpandPolicyEvaluationDetails.json | 116 ++ ...ySubscriptionLevelNestedResourceScope.json | 79 + ...ubscriptionLevelPolicyAssignmentScope.json | 81 + ...ubscriptionLevelPolicyDefinitionScope.json | 81 + ...criptionLevelPolicySetDefinitionScope.json | 81 + ...s_QuerySubscriptionLevelResourceScope.json | 79 + .../PolicyStates_QuerySubscriptionScope.json | 79 + ...yStates_SummarizeManagementGroupScope.json | 54 + ...sourceGroupLevelPolicyAssignmentScope.json | 149 ++ ...icyStates_SummarizeResourceGroupScope.json | 243 +++ .../PolicyStates_SummarizeResourceScope.json | 241 +++ ...ubscriptionLevelPolicyAssignmentScope.json | 244 +++ ...ubscriptionLevelPolicyDefinitionScope.json | 413 ++++ ...criptionLevelPolicySetDefinitionScope.json | 51 + ...licyStates_SummarizeSubscriptionScope.json | 593 ++++++ ...marizeSubscriptionScopeForPolicyGroup.json | 180 ++ .../PolicyStates_TimeRangeSortSelectTop.json | 44 + .../stable/2019-10-01/policyStates.json | 1695 +++++++++++++++++ .../resource-manager/readme.go.md | 10 + .../policyinsights/resource-manager/readme.md | 33 + 30 files changed, 5200 insertions(+) create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndAggregateOnly.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithAggregate.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndMultipleGroups.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_ListOperations.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeManagementGroupScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..ffeb51b4aa43 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2019-10-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyStates)" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "NumDenyStates": 6 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..92ed5fac4c2d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithAggregate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2019-10-05T18:00:00Z", + "$filter": "IsCompliant eq false and (PolicyDefinitionAction eq 'audit' or PolicyDefinitionAction eq 'deny')", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId), aggregate($count as NumAuditDenyNonComplianceRecords))", + "$orderby": "NumAuditDenyNonComplianceRecords desc", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.classiccompute/domainnames/myDomainName", + "NumAuditDenyNonComplianceRecords": 10 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.classiccompute/domainnames/myDomainName", + "NumAuditDenyNonComplianceRecords": 10 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..1fc2ddfadb5e --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2019-10-05T18:00:00Z", + "$filter": "IsCompliant eq false and (PolicyDefinitionAction ne 'audit' and PolicyDefinitionAction ne 'append')", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId))", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/enable monitoring in azure security center", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "policyDefinitionAction": "auditifnotexists", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.network/virtualnetworks/vnet" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/89b27f38-e9e4-4468-ab81-801c84b8c017", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "policyDefinitionAction": "auditifnotexists", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.network/virtualnetworks/vnet" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..00b6fa94d867 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_FilterAndMultipleGroups.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$filter": "IsCompliant eq false", + "$apply": "groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId, ResourceId))/groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId), aggregate($count as NumNonCompliantResources))", + "$orderby": "NumNonCompliantResources desc", + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 10, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "14799174781370023846", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "1679708035638239273", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "14799174781370023846", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "1679708035638239273", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "policySetDefinitionId": "", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 552 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "8935913113203900114", + "NumNonCompliantResources": 544 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874", + "policySetDefinitionId": "", + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 526 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "2124621540977569058", + "NumNonCompliantResources": 509 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_ListOperations.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_ListOperations.json new file mode 100644 index 000000000000..4a9f1714d38b --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_ListOperations.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.count": 3, + "value": [ + { + "name": "Microsoft.PolicyInsights/policyEvents/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Events", + "operation": "Query Policy Events", + "description": "Query information about policy events." + } + }, + { + "name": "Microsoft.PolicyInsights/policyStates/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy States", + "operation": "Query Policy States", + "description": "Query information about policy states." + } + }, + { + "name": "Microsoft.PolicyInsights/policyStates/summarize/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy States", + "operation": "Query Policy Latest States Summary", + "description": "Query summary information about policy latest states." + } + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json new file mode 100644 index 000000000000..7039af5d9f4a --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-09T17:41:47Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/microsoft.insights/autoscalesettings/mytest1", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/1ef5d536aec743a0aa801c1a", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.insights/autoscalesettings", + "resourceLocation": "westus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "1ef5d536aec743a0aa801c1a", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "policySetDefinitionName": "335cefd2-ab16-430f-b364-974a170eb1d5", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "15521232277412542086", + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-09T17:41:47Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/microsoft.insights/autoscalesettings/mytest1", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.insights/autoscalesettings", + "resourceLocation": "westus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json new file mode 100644 index 000000000000..8aac0ec59208 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyStates/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..c3941fb8efa8 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "myPolicyAssignment", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:38:50Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Security/policies/mySecurityPolicy", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Security/policies", + "resourceLocation": null, + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"EUS, WEU\"]}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup", + "policyDefinitionName": "4a0425e4-97bf-4ad0-ab36-145b94083c60", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:38:50Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/test", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Authorization/policyAssignments", + "resourceLocation": null, + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"EUS, WEU\"]}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup", + "policyDefinitionName": "4a0425e4-97bf-4ad0-ab36-145b94083c60", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json new file mode 100644 index 000000000000..927bd0d313cf --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-09T18:42:42Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/mysa1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Storage/storageAccounts", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-09T18:42:42Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/mysa1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Storage/storageAccounts", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json new file mode 100644 index 000000000000..b4c1332a5925 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json new file mode 100644 index 000000000000..4bf37eedc182 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2019-10-01", + "$expand": "policyEvaluationDetails" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"], + "policyEvaluationDetails": { + "evaluatedExpressions": [ + { + "result": "True", + "expression": "type", + "path": "type", + "expressionValue": "Microsoft.ClassicCompute/domainNames", + "targetValue": "Microsoft.ClassicCompute/domainNames", + "operator": "Equals" + }, + { + "result": "False", + "expression": "name", + "path": "name", + "expressionValue": "myDomainName", + "targetValue": "someName", + "operator": "Equals" + } + ] + } + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test2", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/AuditIfNotExistsTest", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "AuditIfNotExists test", + "policyDefinitionAction": "auditifnotexists", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"], + "policyEvaluationDetails": { + "evaluatedExpressions": [ + { + "result": "True", + "expression": "tags", + "path": "tags", + "expressionValue": {}, + "targetValue": "global-opco", + "operator": "NotContainsKey" + } + ], + "ifNotExistsDetails": { + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "totalResources": 1 + } + } + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..2f69b00d0b0c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyStates/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..99ee366d7cb7 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:45:19Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Network/publicIPAddresses/my-ip-1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"test\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionName": "12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "2124621540977569058", + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:45:19Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Network/publicIPAddresses/my-ip-1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"test\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionName": "12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "14799174781370023846", + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..5d7652c54bd9 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:50:27Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/services/myService", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/d9da7e80af6344ab9d342aa7", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications/services", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "d9da7e80af6344ab9d342aa7", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"MyTag\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:50:27Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/services/myService", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/d9da7e80af6344ab9d342aa7", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications/services", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "d9da7e80af6344ab9d342aa7", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"MyTag\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..a42c078e6058 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:54:58Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Web/sites/mySite", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Web/sites", + "resourceLocation": "centralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-13T00:54:58Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Web/sites/mySite", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/LocationAuditDefinition", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Web/sites", + "resourceLocation": "centralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "LocationAuditDefinition", + "policyDefinitionAction": "Audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..9e04b1a656ce --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2019-10-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": true, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "Compliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json new file mode 100644 index 000000000000..6b7e8c1b653f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-09T17:48:05Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Network/publicIPAddresses/mypubip1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "Enable Monitoring in Azure Security Center", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "AuditIfNotExists", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-09T17:48:05Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Network/publicIPAddresses/mypubip1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/9ac09b0657d942e5ad4041a6", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "9ac09b0657d942e5ad4041a6", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "AuditIfNotExists", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": ["myGroup"] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeManagementGroupScope.json new file mode 100644 index 000000000000..4bcc557b2103 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeManagementGroupScope.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2019-10-01", + "$from": "2019-10-05T18:00:00Z", + "$to": "2019-10-06T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny' or PolicyDefinitionAction eq 'audit'", + "$top": 0 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-05 18:00:00Z&$to=2019-10-06 18:00:00Z&$filter=(PolicyDefinitionAction eq 'deny' or PolicyDefinitionAction eq 'audit') and IsCompliant eq false", + "nonCompliantResources": 15410, + "nonCompliantPolicies": 68, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 1400 + }, + { + "complianceState": "noncompliant", + "count": 15410 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 68 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 14 + } + ] + }, + "policyAssignments": [] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..0503187a9888 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json @@ -0,0 +1,149 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "b7a1ca2596524e3ab19597f2", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-22 23:54:22Z&$to=2019-10-23 23:54:22Z&$filter=IsCompliant eq false", + "nonCompliantResources": 7, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 7 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-22 23:54:22Z&$to=2019-10-23 23:54:22Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2'", + "nonCompliantResources": 7, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 7 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60", + "policyDefinitionReferenceId": "2134906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-22 23:54:22Z&$to=2019-10-23 23:54:22Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60'", + "nonCompliantResources": 7, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 7 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 7 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json new file mode 100644 index 000000000000..5b4613091d37 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json @@ -0,0 +1,243 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false", + "nonCompliantResources": 55, + "nonCompliantPolicies": 20, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 55 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 2 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c'", + "nonCompliantResources": 55, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 55 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 2 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionReferenceId": "", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 100, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 100 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 100, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 100 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", + "policySetDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", + "nonCompliantResources": 55, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 55 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionReferenceId": "", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 55, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 55 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 55 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json new file mode 100644 index 000000000000..6eba13430068 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json @@ -0,0 +1,241 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault", + "api-version": "2019-10-01", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false", + "nonCompliantResources": 1, + "nonCompliantPolicies": 14, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 2 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionReferenceId": "", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066'", + "nonCompliantResources": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874'", + "nonCompliantResources": 7, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", + "policySetDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionReferenceId": "", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 100, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..39b39f1e96f0 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json @@ -0,0 +1,244 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false", + "nonCompliantResources": 531, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531'", + "nonCompliantResources": 531, + "nonCompliantPolicies": 4, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 4 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "2134906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "3424906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition", + "policyDefinitionReferenceId": "7943906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", + "nonCompliantResources": 220, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 220 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "policyDefinitionReferenceId": "1234906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682'", + "nonCompliantResources": 54, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 54 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 100, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 100 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..174f23fc9395 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json @@ -0,0 +1,413 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false", + "nonCompliantResources": 561, + "nonCompliantPolicies": 4, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 561 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 558, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 558 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 558, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 558 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 7, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 558 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29'", + "nonCompliantResources": 553, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 553 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "2481303924813039", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 553, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 553 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 553, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 553 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1'", + "nonCompliantResources": 531, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531'", + "nonCompliantResources": 531, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 531 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..6831bbbae7b1 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "api-version": "2019-10-01", + "$from": "2019-10-05T18:00:00Z", + "$to": "2019-10-06T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-05 18:00:00Z&$to=2019-10-06 18:00:00Z&$filter=(PolicyDefinitionAction eq 'deny') and IsCompliant eq false", + "nonCompliantResources": 0, + "nonCompliantPolicies": 0, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + } + ], + "policyDetails": [ + { + "complianceState": "compliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "compliant", + "count": 1 + } + ] + }, + "policyAssignments": [] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json new file mode 100644 index 000000000000..e3e9670b0d16 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json @@ -0,0 +1,593 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$top": 5 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false", + "nonCompliantResources": 619, + "nonCompliantPolicies": 40, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 619 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "1b249ab8b4741b249ab8b474", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 531, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", + "policySetDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionReferenceId": "2134906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29'", + "nonCompliantResources": 552, + "nonCompliantPolicies": 3, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 552 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 3 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "5434906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 552, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 552 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition", + "policyDefinitionReferenceId": "8724906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", + "nonCompliantResources": 29, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 29 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "policyDefinitionReferenceId": "7254906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682'", + "nonCompliantResources": 2, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 2 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 552 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 3 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json new file mode 100644 index 000000000000..438c8c41aba0 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$filter": "'group1' IN PolicyDefinitionGroupNames", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 17 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 140 + }, + { + "complianceState": "noncompliant", + "count": 17 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 2 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/ab379b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "1595906828137356523", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/ab379b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "2134906828137356512", + "policyDefinitionGroupNames": ["group1"], + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 34, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 510 + }, + { + "complianceState": "noncompliant", + "count": 34 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ], + "policyGroups": [ + { + "policyGroupName": "group1", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and 'group1' IN PolicyDefinitionGroupNames", + "nonCompliantResources": 557, + "resourceDetails": [ + { + "complianceState": "compliant", + "count": 14 + }, + { + "complianceState": "noncompliant", + "count": 557 + } + ], + "policyDetails": [ + { + "complianceState": "noncompliant", + "count": 2 + } + ], + "policyGroupDetails": [ + { + "complianceState": "noncompliant", + "count": 1 + } + ] + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..31060e6f5538 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2019-10-05T18:00:00Z", + "$to": "2019-10-06T18:00:00Z", + "$orderby": "Timestamp desc, PolicyAssignmentId asc, SubscriptionId asc, ResourceGroup asc, ResourceId", + "$select": "Timestamp, PolicyAssignmentId, PolicyDefinitionId, SubscriptionId, ResourceGroup, ResourceId, policyDefinitionGroupNames", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-06T17:58:00Z", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myrg1", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Storage/storageAccounts/mysa1", + "policyDefinitionGroupNames": ["myGroup"] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-06T17:58:00Z", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myrg2", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg2/providers/Microsoft.Storage/storageAccounts/mysa2", + "policyDefinitionGroupNames": [] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json new file mode 100644 index 000000000000..46b24ec47f61 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json @@ -0,0 +1,1695 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyStatesClient", + "version": "2019-10-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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/{managementGroupsNamespace}/managementGroups/{managementGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForManagementGroup", + "description": "Queries policy states for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/managementGroupsNamespaceParameter" + }, + { + "$ref": "#/parameters/managementGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at management group scope": { + "$ref": "./examples/PolicyStates_QueryManagementGroupScope.json" + } + } + } + }, + "/providers/{managementGroupsNamespace}/managementGroups/{managementGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForManagementGroup", + "description": "Summarizes policy states for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/managementGroupsNamespaceParameter" + }, + { + "$ref": "#/parameters/managementGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at management group scope": { + "$ref": "./examples/PolicyStates_SummarizeManagementGroupScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForSubscription", + "description": "Queries policy states for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription scope": { + "$ref": "./examples/PolicyStates_QuerySubscriptionScope.json" + }, + "Time range; sort, select and limit": { + "$ref": "./examples/PolicyStates_TimeRangeSortSelectTop.json" + }, + "Filter and group with aggregate": { + "$ref": "./examples/PolicyStates_FilterAndGroupByWithAggregate.json" + }, + "Filter and group without aggregate": { + "$ref": "./examples/PolicyStates_FilterAndGroupByWithoutAggregate.json" + }, + "Filter and aggregate only": { + "$ref": "./examples/PolicyStates_FilterAndAggregateOnly.json" + }, + "Filter and multiple groups": { + "$ref": "./examples/PolicyStates_FilterAndMultipleGroups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForSubscription", + "description": "Summarizes policy states for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at subscription scope": { + "$ref": "./examples/PolicyStates_SummarizeSubscriptionScope.json" + }, + "Summarize at subscription scope for a policy definition group": { + "$ref": "./examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResourceGroup", + "description": "Queries policy states for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at resource group scope": { + "$ref": "./examples/PolicyStates_QueryResourceGroupScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForResourceGroup", + "description": "Summarizes policy states for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at resource group scope": { + "$ref": "./examples/PolicyStates_SummarizeResourceGroupScope.json" + } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResource", + "description": "Queries policy states for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/resourceIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + }, + { + "$ref": "#/parameters/expandParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query all policy states at resource scope": { + "$ref": "./examples/PolicyStates_QueryResourceScope.json" + }, + "Query all policy states at subscription level resource scope": { + "$ref": "./examples/PolicyStates_QuerySubscriptionLevelResourceScope.json" + }, + "Query all policy states at nested resource scope": { + "$ref": "./examples/PolicyStates_QueryNestedResourceScope.json" + }, + "Query all policy states at subscription level nested resource scope": { + "$ref": "./examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json" + }, + "Query all policy states at resource scope and expand policyEvaluationDetails": { + "$ref": "./examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json" + } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForResource", + "description": "Summarizes policy states for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/resourceIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at resource scope": { + "$ref": "./examples/PolicyStates_SummarizeResourceScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForPolicySetDefinition", + "description": "Queries policy states for the subscription level policy set definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policySetDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription level policy set definition scope": { + "$ref": "./examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForPolicySetDefinition", + "description": "Summarizes policy states for the subscription level policy set definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policySetDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy set definition scope": { + "$ref": "./examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyDefinitions/{policyDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForPolicyDefinition", + "description": "Queries policy states for the subscription level policy definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription level policy definition scope": { + "$ref": "./examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyDefinitions/{policyDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForPolicyDefinition", + "description": "Summarizes policy states for the subscription level policy definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy definition scope": { + "$ref": "./examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForSubscriptionLevelPolicyAssignment", + "description": "Queries policy states for the subscription level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription level policy assignment scope": { + "$ref": "./examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForSubscriptionLevelPolicyAssignment", + "description": "Summarizes policy states for the subscription level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy assignment scope": { + "$ref": "./examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResourceGroupLevelPolicyAssignment", + "description": "Queries policy states for the resource group level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at resource group level policy assignment scope": { + "$ref": "./examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForResourceGroupLevelPolicyAssignment", + "description": "Summarizes policy states for the resource group level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy assignment scope": { + "$ref": "./examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json" + } + } + } + }, + "/providers/Microsoft.PolicyInsights/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists available operations.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of available operations.", + "schema": { + "$ref": "#/definitions/OperationsListResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/PolicyStates_ListOperations.json" + } + } + } + } + }, + "definitions": { + "PolicyStatesQueryResults": { + "description": "Query results.", + "properties": { + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "@odata.count": { + "description": "OData entity count; represents the number of policy state records returned.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyState" + } + } + } + }, + "PolicyState": { + "type": "object", + "description": "Policy state record.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since policy state records do not have an entity ID.", + "type": "string" + }, + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "timestamp": { + "description": "Timestamp for the policy state record.", + "type": "string", + "format": "date-time" + }, + "resourceId": { + "description": "Resource ID.", + "type": "string" + }, + "policyAssignmentId": { + "description": "Policy assignment ID.", + "type": "string" + }, + "policyDefinitionId": { + "description": "Policy definition ID.", + "type": "string" + }, + "effectiveParameters": { + "description": "Effective parameters for the policy assignment.", + "type": "string" + }, + "isCompliant": { + "description": "Flag which states whether the resource is compliant against the policy assignment it was evaluated against. This property is deprecated; please use ComplianceState instead.", + "type": "boolean" + }, + "subscriptionId": { + "description": "Subscription ID.", + "type": "string" + }, + "resourceType": { + "description": "Resource type.", + "type": "string" + }, + "resourceLocation": { + "description": "Resource location.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + }, + "resourceTags": { + "description": "List of resource tags.", + "type": "string" + }, + "policyAssignmentName": { + "description": "Policy assignment name.", + "type": "string" + }, + "policyAssignmentOwner": { + "description": "Policy assignment owner.", + "type": "string" + }, + "policyAssignmentParameters": { + "description": "Policy assignment parameters.", + "type": "string" + }, + "policyAssignmentScope": { + "description": "Policy assignment scope.", + "type": "string" + }, + "policyDefinitionName": { + "description": "Policy definition name.", + "type": "string" + }, + "policyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "type": "string" + }, + "policyDefinitionCategory": { + "description": "Policy definition category.", + "type": "string" + }, + "policySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionName": { + "description": "Policy set definition name, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionOwner": { + "description": "Policy set definition owner, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionCategory": { + "description": "Policy set definition category, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionParameters": { + "description": "Policy set definition parameters, if the policy assignment is for a policy set.", + "type": "string" + }, + "managementGroupIds": { + "description": "Comma separated list of management group IDs, which represent the hierarchy of the management groups the resource is under.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "Reference ID for the policy definition inside the policy set, if the policy assignment is for a policy set.", + "type": "string" + }, + "complianceState": { + "description": "Compliance state of the resource.", + "type": "string" + }, + "policyEvaluationDetails": { + "description": "Policy evaluation details.", + "type": "object", + "$ref": "#/definitions/PolicyEvaluationDetails" + }, + "policyDefinitionGroupNames": { + "description": "Policy definition group names.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, + "PolicyEvaluationDetails": { + "type": "object", + "description": "Policy evaluation details.", + "properties": { + "evaluatedExpressions": { + "description": "Details of the evaluated expressions.", + "type": "array", + "items": { + "$ref": "#/definitions/ExpressionEvaluationDetails" + } + }, + "ifNotExistsDetails": { + "description": "Evaluation details of IfNotExists effect.", + "type": "object", + "$ref": "#/definitions/IfNotExistsEvaluationDetails" + } + } + }, + "ExpressionEvaluationDetails": { + "type": "object", + "description": "Evaluation details of policy language expressions.", + "properties": { + "result": { + "description": "Evaluation result.", + "type": "string" + }, + "expression": { + "description": "Expression evaluated.", + "type": "string" + }, + "path": { + "description": "Property path if the expression is a field or an alias.", + "type": "string" + }, + "expressionValue": { + "description": "Value of the expression.", + "type": "object" + }, + "targetValue": { + "description": "Target value to be compared with the expression value.", + "type": "object" + }, + "operator": { + "description": "Operator to compare the expression value and the target value.", + "type": "string" + } + } + }, + "IfNotExistsEvaluationDetails": { + "type": "object", + "description": "Evaluation details of IfNotExists effect.", + "properties": { + "resourceId": { + "description": "ID of the last evaluated resource for IfNotExists effect.", + "type": "string" + }, + "totalResources": { + "description": "Total number of resources to which the existence condition is applicable.", + "type": "integer" + } + } + }, + "SummarizeResults": { + "description": "Summarize action results.", + "properties": { + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "@odata.count": { + "description": "OData entity count; represents the number of summaries returned; always set to 1.", + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 1 + }, + "value": { + "description": "Summarize action results.", + "type": "array", + "items": { + "$ref": "#/definitions/Summary" + } + } + } + }, + "Summary": { + "description": "Summary results.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since summaries do not have an entity ID.", + "type": "string" + }, + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "results": { + "description": "Compliance summary for all policy assignments.", + "$ref": "#/definitions/SummaryResults" + }, + "policyAssignments": { + "description": "Policy assignments summary.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyAssignmentSummary" + } + } + } + }, + "SummaryResults": { + "description": "Compliance summary on a particular summary level.", + "properties": { + "queryResultsUri": { + "description": "HTTP POST URI for queryResults action on Microsoft.PolicyInsights to retrieve raw results for the compliance summary. This property will not be available by default in future API versions, but could be queried explicitly.", + "type": "string" + }, + "nonCompliantResources": { + "description": "Number of non-compliant resources.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "nonCompliantPolicies": { + "description": "Number of non-compliant policies.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "resourceDetails": { + "description": "The resources summary at this level.", + "type": "array", + "items": { + "$ref": "#/definitions/ComplianceDetail" + } + }, + "policyDetails": { + "description": "The policy artifact summary at this level. For query scope level, it represents policy assignment summary. For policy assignment level, it represents policy definitions summary.", + "type": "array", + "items": { + "$ref": "#/definitions/ComplianceDetail" + } + }, + "policyGroupDetails": { + "description": "The policy definition group summary at this level.", + "type": "array", + "items": { + "$ref": "#/definitions/ComplianceDetail" + } + } + } + }, + "ComplianceDetail": { + "description": "The compliance state rollup.", + "properties": { + "complianceState": { + "description": "The compliance state.", + "type": "string" + }, + "count": { + "description": "Summarized count value for this compliance state.", + "type": "integer", + "format": "int32" + } + } + }, + "PolicyAssignmentSummary": { + "description": "Policy assignment summary.", + "properties": { + "policyAssignmentId": { + "description": "Policy assignment ID.", + "type": "string" + }, + "policySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "type": "string" + }, + "results": { + "description": "Compliance summary for the policy assignment.", + "$ref": "#/definitions/SummaryResults" + }, + "policyDefinitions": { + "description": "Policy definitions summary.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDefinitionSummary" + } + }, + "policyGroups": { + "description": "Policy definition group summary.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyGroupSummary" + } + } + } + }, + "PolicyDefinitionSummary": { + "description": "Policy definition summary.", + "properties": { + "policyDefinitionId": { + "description": "Policy definition ID.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "Policy definition reference ID.", + "type": "string" + }, + "policyDefinitionGroupNames": { + "description": "Policy definition group names.", + "type": "array", + "items": { + "type": "string" + } + }, + "effect": { + "description": "Policy effect, i.e. policy definition action.", + "type": "string" + }, + "results": { + "description": "Compliance summary for the policy definition.", + "$ref": "#/definitions/SummaryResults" + } + } + }, + "PolicyGroupSummary": { + "description": "Policy definition group summary.", + "properties": { + "policyGroupName": { + "description": "Policy group name.", + "type": "string" + }, + "results": { + "description": "Compliance summary for the policy definition group.", + "$ref": "#/definitions/SummaryResults" + } + } + }, + "QueryFailure": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "OperationsListResults": { + "description": "List of available operations.", + "properties": { + "@odata.count": { + "description": "OData entity count; represents the number of operations returned.", + "type": "integer", + "format": "int32", + "minimum": 1 + }, + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Operation definition.", + "properties": { + "name": { + "description": "Operation name.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider name.", + "type": "string" + }, + "resource": { + "description": "Resource name on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation name.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + } + } + }, + "MetadataDocument": { + "description": "Metadata XML document.", + "type": "string" + } + }, + "parameters": { + "policyStatesResourceParameter": { + "name": "policyStatesResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "default", + "latest" + ], + "x-ms-enum": { + "name": "PolicyStatesResource", + "modelAsString": true + }, + "description": "The virtual resource under PolicyStates resource type. In a given time range, 'latest' represents the latest policy state(s), whereas 'default' represents all policy state(s).", + "x-ms-parameter-location": "method" + }, + "policyStatesSummaryResourceParameter": { + "name": "policyStatesSummaryResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "latest" + ], + "description": "The virtual resource under PolicyStates resource type for summarize action. In a given time range, 'latest' represents the latest policy state(s) and is the only allowed value.", + "x-ms-parameter-location": "method" + }, + "managementGroupsNamespaceParameter": { + "name": "managementGroupsNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Management" + ], + "description": "The namespace for Microsoft Management RP; only \"Microsoft.Management\" is allowed.", + "x-ms-parameter-location": "method" + }, + "managementGroupNameParameter": { + "name": "managementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Management group name.", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Microsoft Azure subscription ID.", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name.", + "x-ms-parameter-location": "method" + }, + "resourceIdParameter": { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "Resource ID.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "authorizationNamespaceParameter": { + "name": "authorizationNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Authorization" + ], + "description": "The namespace for Microsoft Authorization resource provider; only \"Microsoft.Authorization\" is allowed.", + "x-ms-parameter-location": "method" + }, + "policySetDefinitionNameParameter": { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy set definition name.", + "x-ms-parameter-location": "method" + }, + "policyDefinitionNameParameter": { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy definition name.", + "x-ms-parameter-location": "method" + }, + "policyAssignmentNameParameter": { + "name": "policyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy assignment name.", + "x-ms-parameter-location": "method" + }, + "scopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "A valid scope, i.e. management group, subscription, resource group, or resource ID. Scope used has no effect on metadata returned.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version.", + "x-ms-parameter-location": "client" + }, + "topParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Maximum number of records to return.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Top" + }, + "orderByParameter": { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "Ordering expression using OData notation. One or more comma-separated column names with an optional \"desc\" (the default) or \"asc\", e.g. \"$orderby=PolicyAssignmentId, ResourceId asc\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "OrderBy" + }, + "selectParameter": { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Select expression using OData notation. Limits the columns on each record to just those requested, e.g. \"$select=PolicyAssignmentId, ResourceId\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Select" + }, + "fromParameter": { + "name": "$from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "ISO 8601 formatted timestamp specifying the start time of the interval to query. When not specified, the service uses ($to - 1-day).", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "From" + }, + "toParameter": { + "name": "$to", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "ISO 8601 formatted timestamp specifying the end time of the interval to query. When not specified, the service uses request time.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "To" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Filter" + }, + "applyParameter": { + "name": "$apply", + "in": "query", + "required": false, + "type": "string", + "description": "OData apply expression for aggregations.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Apply" + }, + "expandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to expand policyEvaluationDetails, use $expand=policyEvaluationDetails", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Expand" + } + } +} diff --git a/specification/policyinsights/resource-manager/readme.go.md b/specification/policyinsights/resource-manager/readme.go.md index 88dfac2f0091..5ffcee50ab45 100644 --- a/specification/policyinsights/resource-manager/readme.go.md +++ b/specification/policyinsights/resource-manager/readme.go.md @@ -13,12 +13,22 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-10 - tag: package-2018-07 - tag: package-2018-04 - tag: package-2017-12 - tag: package-2017-10 - tag: package-2017-08 ``` +### Tag: package-2019-10 and go + +These settings apply only when `--tag=package-2019-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-10' && $(go) +output-folder: $(go-sdk-folder)/services//$(namespace)/mgmt/2019-10-01/$(namespace) +``` + ### Tag: package-2018-07 and go These settings apply only when `--tag=package-2018-07 --go` is specified on the command line. diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md index befba460552e..bd1810ec5122 100644 --- a/specification/policyinsights/resource-manager/readme.md +++ b/specification/policyinsights/resource-manager/readme.md @@ -24,6 +24,12 @@ To see additional help and options, run: ### Basic Information These are the global settings for the PolicyInsights API. +``` yaml +title: PolicyInsightsClient +openapi-type: arm +tag: package-2019-10 +``` + ``` yaml title: PolicyInsightsClient openapi-type: arm @@ -56,6 +62,17 @@ directive: - $.paths["/{scope}/providers/Microsoft.PolicyInsights/policyStates/$metadata"].get.produces[0] ``` +### Tag: package-2019-10 + +These settings apply only when `--tag=package-2019-10` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10' +input-file: +- Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json +- Microsoft.PolicyInsights/preview/2018-07-01-preview/remediations.json +- Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json +- Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json +``` ### Tag: package-2018-07 @@ -197,10 +214,25 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-policyinsights ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-10 - tag: package-2018-07 - tag: package-2018-04 ``` +### Tag: package-2019-10 and java + +These settings apply only when `--tag=package-2019-10 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-10' && $(java) +java: + namespace: com.microsoft.azure.management.policyinsights.v2019_10_01 + output-folder: $(azure-libraries-for-java-folder)/policyinsights/resource-manager/v2019_10_01 +regenerate-manager: true +generate-interface: true +``` + + ### Tag: package-2018-07 and java These settings apply only when `--tag=package-2018-07 --java` is specified on the command line. @@ -240,6 +272,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/remediations.json - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json From 9aad4c861a56274b4d162dbaa2ee6173ef730dd6 Mon Sep 17 00:00:00 2001 From: Chuang <54572251+xccc-msft@users.noreply.github.com> Date: Thu, 17 Oct 2019 11:15:35 +0800 Subject: [PATCH 08/54] Advisor: add readme.java.md file (#7533) --- .../advisor/resource-manager/readme.java.md | 61 ++++++++++++++++++ .../advisor/resource-manager/readme.md | 62 +------------------ 2 files changed, 62 insertions(+), 61 deletions(-) create mode 100644 specification/advisor/resource-manager/readme.java.md diff --git a/specification/advisor/resource-manager/readme.java.md b/specification/advisor/resource-manager/readme.java.md new file mode 100644 index 000000000000..dcbf7638f71e --- /dev/null +++ b/specification/advisor/resource-manager/readme.java.md @@ -0,0 +1,61 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.advisor +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-advisor +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2017-04 + - tag: package-2017-03 + - tag: package-2016-07-preview +``` + +### Tag: package-2017-04 and java + +These settings apply only when `--tag=package-2017-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2017-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.advisor.v2017_04_19 + output-folder: $(azure-libraries-for-java-folder)/advisor/resource-manager/v2017_04_19 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2017-03 and java + +These settings apply only when `--tag=package-2017-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2017-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.advisor.v2017_03_31 + output-folder: $(azure-libraries-for-java-folder)/advisor/resource-manager/v2017_03_31 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2016-07-preview and java + +These settings apply only when `--tag=package-2016-07-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2016-07-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.advisor.v2016_07_12_preview + output-folder: $(azure-libraries-for-java-folder)/advisor/resource-manager/v2016_07_12_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/advisor/resource-manager/readme.md b/specification/advisor/resource-manager/readme.md index b9f5292cb02a..03863a89aa5f 100644 --- a/specification/advisor/resource-manager/readme.md +++ b/specification/advisor/resource-manager/readme.md @@ -127,67 +127,7 @@ csharp: ## Java -These settings apply only when `--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(java) -azure-arm: true -fluent: true -namespace: com.microsoft.azure.management.advisor -license-header: MICROSOFT_MIT_NO_CODEGEN -payload-flattening-threshold: 1 -output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-advisor -``` - -### Java multi-api - -``` yaml $(java) && $(multiapi) -batch: - - tag: package-2017-03 - - tag: package-2017-04 - - tag: package-2016-07-preview -``` - -### Tag: package-2017-03 and java - -These settings apply only when `--tag=package-2017-03 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2017-03' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.advisor.v2017_03_31 - output-folder: $(azure-libraries-for-java-folder)/advisor/resource-manager/v2017_03_31 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2017-04 and java - -These settings apply only when `--tag=package-2017-04 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2017-04' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.advisor.v2017_04_19 - output-folder: $(azure-libraries-for-java-folder)/advisor/resource-manager/v2017_04_19 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2016-07-preview and java - -These settings apply only when `--tag=package-2016-07-preview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2016-07-preview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.advisor.v2016_07_12_preview - output-folder: $(azure-libraries-for-java-folder)/advisor/resource-manager/v2016_07_12_preview -regenerate-manager: true -generate-interface: true -``` - - +See configuration in [readme.java.md](./readme.java.md) ## Multi-API/Profile support for AutoRest v3 generators From a71b00b279ac6f376c50f9fc39651ddeaa55899a Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 17 Oct 2019 03:36:57 +0000 Subject: [PATCH 09/54] regenerated all-api-versions --- specification/policyinsights/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md index bd1810ec5122..58ebb08d91c4 100644 --- a/specification/policyinsights/resource-manager/readme.md +++ b/specification/policyinsights/resource-manager/readme.md @@ -272,10 +272,10 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/remediations.json - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json + - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyEvents.json From d6dc3f5ff3a7e5c98f749f2e067a8ceae0e6c64a Mon Sep 17 00:00:00 2001 From: sjtuxzq Date: Thu, 17 Oct 2019 11:41:50 +0800 Subject: [PATCH 10/54] [DataFactory]Add Dynamics Server-toServer authentication type. (#7437) * Swagger changes for Dynamics S2S auth. * Fix mistakes. --- .../2018-06-01/entityTypes/LinkedService.json | 84 ++++++++++++++++--- 1 file changed, 72 insertions(+), 12 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index 3dfc7d9b622d..cac8e270da89 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -558,10 +558,11 @@ }, "enum": [ "Office365", - "Ifd" + "Ifd", + "AADServicePrincipal" ], "type": "object", - "description": "The authentication type to connect to Dynamics server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. Type: string (or Expression with resultType string)." + "description": "The authentication type to connect to Dynamics server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." }, "username": { "type": "object", @@ -571,6 +572,26 @@ "description": "Password to access the Dynamics instance.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "object", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -578,8 +599,7 @@ }, "required": [ "deploymentType", - "authenticationType", - "username" + "authenticationType" ] }, "DynamicsCrmLinkedService": { @@ -640,10 +660,11 @@ }, "enum": [ "Office365", - "Ifd" + "Ifd", + "AADServicePrincipal" ], "type": "string", - "description": "The authentication type to connect to Dynamics CRM server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. Type: string (or Expression with resultType string)." + "description": "The authentication type to connect to Dynamics CRM server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." }, "username": { "type": "object", @@ -653,6 +674,26 @@ "description": "Password to access the Dynamics CRM instance.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "object", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -660,8 +701,7 @@ }, "required": [ "deploymentType", - "authenticationType", - "username" + "authenticationType" ] }, "CommonDataServiceForAppsLinkedService": { @@ -722,10 +762,11 @@ }, "enum": [ "Office365", - "Ifd" + "Ifd", + "AADServicePrincipal" ], "type": "string", - "description": "The authentication type to connect to Common Data Service for Apps server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. Type: string (or Expression with resultType string)." + "description": "The authentication type to connect to Common Data Service for Apps server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." }, "username": { "type": "object", @@ -735,6 +776,26 @@ "description": "Password to access the Common Data Service for Apps instance.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "object", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -742,8 +803,7 @@ }, "required": [ "deploymentType", - "authenticationType", - "username" + "authenticationType" ] }, "HDInsightLinkedService": { From c2f6e5b285332de1ab1d61fe530bde117b5dd517 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 17 Oct 2019 01:38:14 -0400 Subject: [PATCH 11/54] chore: jsonfmt policyinsights (#7536) --- ...olicyStates_QueryManagementGroupScope.json | 8 ++++-- ...PolicyStates_QueryNestedResourceScope.json | 8 ++++-- ...sourceGroupLevelPolicyAssignmentScope.json | 8 ++++-- .../PolicyStates_QueryResourceGroupScope.json | 8 ++++-- .../PolicyStates_QueryResourceScope.json | 8 ++++-- ...rceScopeExpandPolicyEvaluationDetails.json | 10 +++++-- ...ySubscriptionLevelNestedResourceScope.json | 8 ++++-- ...ubscriptionLevelPolicyAssignmentScope.json | 8 ++++-- ...ubscriptionLevelPolicyDefinitionScope.json | 8 ++++-- ...criptionLevelPolicySetDefinitionScope.json | 8 ++++-- ...s_QuerySubscriptionLevelResourceScope.json | 8 ++++-- .../PolicyStates_QuerySubscriptionScope.json | 8 ++++-- ...sourceGroupLevelPolicyAssignmentScope.json | 14 ++++++---- ...icyStates_SummarizeResourceGroupScope.json | 24 +++++++++------- .../PolicyStates_SummarizeResourceScope.json | 16 +++++------ ...ubscriptionLevelPolicyAssignmentScope.json | 20 +++++++++---- ...ubscriptionLevelPolicyDefinitionScope.json | 28 +++++++++++-------- ...licyStates_SummarizeSubscriptionScope.json | 28 +++++++++++++------ ...marizeSubscriptionScopeForPolicyGroup.json | 12 +++++--- .../PolicyStates_TimeRangeSortSelectTop.json | 4 ++- .../stable/2019-10-01/policyStates.json | 24 ++++++++-------- 21 files changed, 176 insertions(+), 92 deletions(-) diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json index 7039af5d9f4a..30027d5f02e2 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json @@ -40,7 +40,9 @@ "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": "15521232277412542086", "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -71,7 +73,9 @@ "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": "", "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json index 8aac0ec59208..49c4b290456e 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json @@ -39,7 +39,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -70,7 +72,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json index c3941fb8efa8..2737f3ed5ac2 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -42,7 +42,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -73,7 +75,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json index 927bd0d313cf..247f76fd9eaf 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json @@ -40,7 +40,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -71,7 +73,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json index b4c1332a5925..10885540081a 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json @@ -39,7 +39,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -70,7 +72,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json index 4bf37eedc182..e4b83c3c4133 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json @@ -39,8 +39,10 @@ "policySetDefinitionParameters": null, "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, - "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"], + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": [ + "myGroup" + ], "policyEvaluationDetails": { "evaluatedExpressions": [ { @@ -91,7 +93,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"], + "policyDefinitionGroupNames": [ + "myGroup" + ], "policyEvaluationDetails": { "evaluatedExpressions": [ { diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json index 2f69b00d0b0c..69a778af5f0b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -39,7 +39,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -70,7 +72,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json index 99ee366d7cb7..afd036ad6184 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -41,7 +41,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": "2124621540977569058", "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -72,7 +74,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": "14799174781370023846", "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json index 5d7652c54bd9..f15370c3093c 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -41,7 +41,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -72,7 +74,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json index a42c078e6058..bfd2e1cd48f3 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -41,7 +41,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -72,7 +74,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json index 9e04b1a656ce..521ac190d5a1 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -39,7 +39,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -70,7 +72,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "Compliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json index 6b7e8c1b653f..5d5ddf125dca 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json @@ -39,7 +39,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, @@ -70,7 +72,9 @@ "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", "policyDefinitionReferenceId": null, "complianceState": "NonCompliant", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json index 0503187a9888..09df1ae99569 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json @@ -19,7 +19,7 @@ "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-22 23:54:22Z&$to=2019-10-23 23:54:22Z&$filter=IsCompliant eq false", "nonCompliantResources": 7, - "nonCompliantPolicies": 1, + "nonCompliantPolicies": 1, "resourceDetails": [ { "complianceState": "compliant", @@ -50,7 +50,7 @@ "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-22 23:54:22Z&$to=2019-10-23 23:54:22Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2'", "nonCompliantResources": 7, - "nonCompliantPolicies": 1, + "nonCompliantPolicies": 1, "resourceDetails": [ { "complianceState": "compliant", @@ -78,11 +78,13 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60", "policyDefinitionReferenceId": "2134906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-22 23:54:22Z&$to=2019-10-23 23:54:22Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60'", - "nonCompliantResources": 7, + "nonCompliantResources": 7, "resourceDetails": [ { "complianceState": "compliant", @@ -108,9 +110,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 557, diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json index 5b4613091d37..01908f881400 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceGroupScope.json @@ -48,7 +48,7 @@ "results": { "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c'", "nonCompliantResources": 55, - "nonCompliantPolicies": 1, + "nonCompliantPolicies": 1, "resourceDetails": [ { "complianceState": "compliant", @@ -76,11 +76,13 @@ { "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", "policyDefinitionReferenceId": "", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", - "nonCompliantResources": 100, + "nonCompliantResources": 100, "resourceDetails": [ { "complianceState": "compliant", @@ -106,9 +108,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 100, @@ -144,7 +146,7 @@ "results": { "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", "nonCompliantResources": 55, - "nonCompliantPolicies": 1, + "nonCompliantPolicies": 1, "resourceDetails": [ { "complianceState": "compliant", @@ -172,11 +174,13 @@ { "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", "policyDefinitionReferenceId": "", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:55:09Z&$to=2019-10-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", - "nonCompliantResources": 55, + "nonCompliantResources": 55, "resourceDetails": [ { "complianceState": "compliant", @@ -202,9 +206,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 557, diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json index 6eba13430068..8996d4be35d4 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeResourceScope.json @@ -75,7 +75,7 @@ "policyDefinitions": [ { "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", - "policyDefinitionReferenceId": "", + "policyDefinitionReferenceId": "", "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066'", @@ -105,9 +105,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "", + "policyGroupName": "", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874'", "nonCompliantResources": 7, @@ -135,7 +135,7 @@ ] } } - ] + ] }, { "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", @@ -143,7 +143,7 @@ "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:59:17Z&$to=2019-10-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", "nonCompliantResources": 1, - "nonCompliantPolicies": 1, + "nonCompliantPolicies": 1, "resourceDetails": [ { "complianceState": "compliant", @@ -200,9 +200,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 100, @@ -231,7 +231,7 @@ } } ] - } + } ] } ] diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json index 39b39f1e96f0..70bce5491f0b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json @@ -77,7 +77,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", "policyDefinitionReferenceId": "2134906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", @@ -109,7 +111,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", "policyDefinitionReferenceId": "3424906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", @@ -141,7 +145,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition", "policyDefinitionReferenceId": "7943906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", @@ -173,7 +179,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", "policyDefinitionReferenceId": "1234906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:09:24Z&$to=2019-10-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682'", @@ -203,9 +211,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 100, diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json index 174f23fc9395..32bd0aeebc91 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json @@ -106,9 +106,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "", + "policyGroupName": "", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", "nonCompliantResources": 7, @@ -172,7 +172,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", "policyDefinitionReferenceId": "2481303924813039", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", @@ -202,9 +204,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 553, @@ -268,7 +270,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", "policyDefinitionReferenceId": "", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", @@ -298,9 +302,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 531, @@ -342,7 +346,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", "policyDefinitionReferenceId": "", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 20:07:10Z&$to=2019-10-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", @@ -372,9 +378,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 531, diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json index e3e9670b0d16..abf85e292e49 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScope.json @@ -76,7 +76,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", "policyDefinitionReferenceId": "1b249ab8b4741b249ab8b474", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", @@ -106,9 +108,9 @@ } } ], - "policyGroups": [ + "policyGroups": [ { - "policyGroupName": "group1", + "policyGroupName": "group1", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicySetDefinitiontId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad' and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and 'group1' IN PolicyDefinitionGroupNames", "nonCompliantResources": 531, @@ -200,7 +202,7 @@ ] } } - ], + ], "policyGroups": [ { "policyGroupName": "", @@ -295,7 +297,7 @@ ] } } - ], + ], "policyGroups": [ { "policyGroupName": "", @@ -362,7 +364,9 @@ { "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", "policyDefinitionReferenceId": "2134906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", @@ -458,7 +462,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", "policyDefinitionReferenceId": "5434906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", @@ -490,7 +496,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition", "policyDefinitionReferenceId": "8724906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", @@ -522,7 +530,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", "policyDefinitionReferenceId": "7254906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682'", diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json index 438c8c41aba0..05032961d6fd 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_SummarizeSubscriptionScopeForPolicyGroup.json @@ -73,11 +73,13 @@ } ] }, - "policyDefinitions": [ + "policyDefinitions": [ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/ab379b49-a579-4045-984e-1b249ab8b474", "policyDefinitionReferenceId": "1595906828137356523", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/ab379b49-a579-4045-984e-1b249ab8b474'", @@ -109,7 +111,9 @@ { "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", "policyDefinitionReferenceId": "2134906828137356512", - "policyDefinitionGroupNames": ["group1"], + "policyDefinitionGroupNames": [ + "group1" + ], "effect": "audit", "results": { "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2019-10-12 19:48:53Z&$to=2019-10-13 19:48:53Z&$filter='group1' IN PolicyDefinitionGroupNames and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", @@ -177,4 +181,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json index 31060e6f5538..d4c3dcfa6620 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TimeRangeSortSelectTop.json @@ -24,7 +24,9 @@ "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", "resourceGroup": "myrg1", "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Storage/storageAccounts/mysa1", - "policyDefinitionGroupNames": ["myGroup"] + "policyDefinitionGroupNames": [ + "myGroup" + ] }, { "@odata.id": null, diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json index 46b24ec47f61..ab104e5d24e9 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json @@ -237,9 +237,9 @@ "$ref": "#/parameters/toParameter" }, { - "$ref": "#/parameters/filterParameter" + "$ref": "#/parameters/filterParameter" } - ], + ], "responses": { "200": { "description": "Summarize results.", @@ -998,9 +998,9 @@ } } } - } - }, - "definitions": { + } + }, + "definitions": { "PolicyStatesQueryResults": { "description": "Query results.", "properties": { @@ -1058,7 +1058,7 @@ }, "isCompliant": { "description": "Flag which states whether the resource is compliant against the policy assignment it was evaluated against. This property is deprecated; please use ComplianceState instead.", - "type": "boolean" + "type": "boolean" }, "subscriptionId": { "description": "Subscription ID.", @@ -1284,7 +1284,7 @@ "type": "integer", "format": "int32", "minimum": 0 - }, + }, "resourceDetails": { "description": "The resources summary at this level.", "type": "array", @@ -1297,14 +1297,14 @@ "type": "array", "items": { "$ref": "#/definitions/ComplianceDetail" - } + } }, "policyGroupDetails": { "description": "The policy definition group summary at this level.", "type": "array", "items": { "$ref": "#/definitions/ComplianceDetail" - } + } } } }, @@ -1313,14 +1313,14 @@ "properties": { "complianceState": { "description": "The compliance state.", - "type": "string" + "type": "string" }, "count": { "description": "Summarized count value for this compliance state.", "type": "integer", "format": "int32" } - } + } }, "PolicyAssignmentSummary": { "description": "Policy assignment summary.", @@ -1387,7 +1387,7 @@ "policyGroupName": { "description": "Policy group name.", "type": "string" - }, + }, "results": { "description": "Compliance summary for the policy definition group.", "$ref": "#/definitions/SummaryResults" From 3b87973c9e2638149341c9477e6065a475c19029 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 17 Oct 2019 01:39:24 -0400 Subject: [PATCH 12/54] chore: jsonfmt compute (#7535) --- .../stable/2018-10-01/compute.json | 4 +- .../CreateAScaleSetWithAutomaticRepairs.json | 329 +++++++++--------- .../stable/2019-03-01/compute.json | 4 +- .../CreateAScaleSetWithAutomaticRepairs.json | 329 +++++++++--------- 4 files changed, 332 insertions(+), 334 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json index 861489202f6c..58167b80e75b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json @@ -2599,7 +2599,7 @@ }, "Create a scale set with ephemeral os disks.": { "$ref": "./examples/CreateAScaleSetWithDiffOsDisk.json" - }, + }, "Create a scale set with automatic repairs enabled": { "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" } @@ -6085,7 +6085,7 @@ "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The default value is 5 minutes (PT5M)." }, "maxInstanceRepairsPercent": { - "type": "integer", + "type": "integer", "description": "The percentage (capacity of scaleset) of virtual machines that will be simultaneously repaired. The default value is 20%." } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json index 088fc98b5882..3041b5e76774 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -1,18 +1,85 @@ { + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2018-10-01", "parameters": { - "subscriptionId": "{subscription-id}", - "resourceGroupName": "myResourceGroup", - "vmScaleSetName": "{vmss-name}", - "api-version": "2018-10-01", - "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + } + } + } + }, + "responses": { + "200": { + "body": { "sku": { "tier": "Standard", "capacity": 3, "name": "Standard_D1_v2" }, - "location": "westus", + "name": "{vmss-name}", "properties": { + "singlePlacementGroup": true, "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", "virtualMachineProfile": { "storageProfile": { "imageReference": { @@ -32,13 +99,20 @@ "osProfile": { "computerNamePrefix": "{vmss-name}", "adminUsername": "{your-username}", - "adminPassword": "{your-password}" + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } }, "networkProfile": { "networkInterfaceConfigurations": [ { "name": "{vmss-name}", "properties": { + "dnsSettings": { + "dnsServers": [] + }, "primary": true, "enableIPForwarding": true, "ipConfigurations": [ @@ -46,11 +120,13 @@ "name": "{vmss-name}", "properties": { "subnet": { - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" - } + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" } } - ] + ], + "enableAcceleratedNetworking": false } } ] @@ -60,172 +136,95 @@ "mode": "Manual" }, "automaticRepairsPolicy": { - "enabled": true, + "enabled": true, "gracePeriod": "PT3M", "maxInstanceRepairsPercent": 100 - } - } + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" } }, - "responses": { - "200": { - "body": { - "sku": { - "tier": "Standard", - "capacity": 3, - "name": "Standard_D1_v2" - }, - "name": "{vmss-name}", - "properties": { - "singlePlacementGroup": true, - "overprovision": true, - "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", - "virtualMachineProfile": { - "storageProfile": { - "imageReference": { - "sku": "2016-Datacenter", - "publisher": "MicrosoftWindowsServer", - "version": "latest", - "offer": "WindowsServer" - }, - "osDisk": { - "caching": "ReadWrite", - "managedDisk": { - "storageAccountType": "Standard_LRS" - }, - "createOption": "FromImage" - } - }, - "osProfile": { - "computerNamePrefix": "{vmss-name}", - "adminUsername": "{your-username}", - "secrets": [], - "windowsConfiguration": { - "provisionVMAgent": true, - "enableAutomaticUpdates": true - } + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" }, - "networkProfile": { - "networkInterfaceConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "dnsSettings": { - "dnsServers": [] - }, - "primary": true, - "enableIPForwarding": true, - "ipConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "subnet": { - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" - }, - "privateIPAddressVersion": "IPv4" - } - } - ], - "enableAcceleratedNetworking": false - } - } - ] + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" } }, - "upgradePolicy": { - "mode": "Manual" - }, - "automaticRepairsPolicy": { - "enabled": true, - "gracePeriod": "PT3M", - "maxInstanceRepairsPercent": 100 + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } }, - "provisioningState": "Creating" - }, - "location": "westus", - "type": "Microsoft.Compute/virtualMachineScaleSets", - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" - } - }, - "201": { - "body": { - "sku": { - "tier": "Standard", - "capacity": 3, - "name": "Standard_D1_v2" - }, - "name": "{vmss-name}", - "properties": { - "singlePlacementGroup": true, - "overprovision": true, - "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", - "virtualMachineProfile": { - "storageProfile": { - "imageReference": { - "sku": "2016-Datacenter", - "publisher": "MicrosoftWindowsServer", - "version": "latest", - "offer": "WindowsServer" - }, - "osDisk": { - "caching": "ReadWrite", - "managedDisk": { - "storageAccountType": "Standard_LRS" - }, - "createOption": "FromImage" - } - }, - "osProfile": { - "computerNamePrefix": "{vmss-name}", - "adminUsername": "{your-username}", - "secrets": [], - "windowsConfiguration": { - "provisionVMAgent": true, - "enableAutomaticUpdates": true - } - }, - "networkProfile": { - "networkInterfaceConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "dnsSettings": { - "dnsServers": [] - }, - "primary": true, - "enableIPForwarding": true, - "ipConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "subnet": { - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" - }, - "privateIPAddressVersion": "IPv4" - } + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" } - ], - "enableAcceleratedNetworking": false - } + } + ], + "enableAcceleratedNetworking": false } - ] - } - }, - "upgradePolicy": { - "mode": "Manual" - }, - "automaticRepairsPolicy": { - "enabled": true, - "gracePeriod": "PT3M", - "maxInstanceRepairsPercent": 100 - }, - "provisioningState": "Creating" + } + ] + } }, - "location": "westus", - "type": "Microsoft.Compute/virtualMachineScaleSets", - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" - } + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" } } } - \ No newline at end of file +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 8aee8345774c..48ec9675219d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -3136,7 +3136,7 @@ }, "Create a scale set with terminate scheduled events enabled.": { "$ref": "./examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json" - }, + }, "Create a scale set with automatic repairs enabled": { "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" } @@ -6964,7 +6964,7 @@ "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The default value is 5 minutes (PT5M)." }, "maxInstanceRepairsPercent": { - "type": "integer", + "type": "integer", "description": "The percentage (capacity of scaleset) of virtual machines that will be simultaneously repaired. The default value is 20%." } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json index bd9814f3bf3d..99a8dbe41c9b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -1,18 +1,85 @@ { + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-03-01", "parameters": { - "subscriptionId": "{subscription-id}", - "resourceGroupName": "myResourceGroup", - "vmScaleSetName": "{vmss-name}", - "api-version": "2019-03-01", - "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + } + } + } + }, + "responses": { + "200": { + "body": { "sku": { "tier": "Standard", "capacity": 3, "name": "Standard_D1_v2" }, - "location": "westus", + "name": "{vmss-name}", "properties": { + "singlePlacementGroup": true, "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", "virtualMachineProfile": { "storageProfile": { "imageReference": { @@ -32,13 +99,20 @@ "osProfile": { "computerNamePrefix": "{vmss-name}", "adminUsername": "{your-username}", - "adminPassword": "{your-password}" + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } }, "networkProfile": { "networkInterfaceConfigurations": [ { "name": "{vmss-name}", "properties": { + "dnsSettings": { + "dnsServers": [] + }, "primary": true, "enableIPForwarding": true, "ipConfigurations": [ @@ -46,11 +120,13 @@ "name": "{vmss-name}", "properties": { "subnet": { - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" - } + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" } } - ] + ], + "enableAcceleratedNetworking": false } } ] @@ -60,172 +136,95 @@ "mode": "Manual" }, "automaticRepairsPolicy": { - "enabled": true, + "enabled": true, "gracePeriod": "PT3M", "maxInstanceRepairsPercent": 100 - } - } + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" } }, - "responses": { - "200": { - "body": { - "sku": { - "tier": "Standard", - "capacity": 3, - "name": "Standard_D1_v2" - }, - "name": "{vmss-name}", - "properties": { - "singlePlacementGroup": true, - "overprovision": true, - "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", - "virtualMachineProfile": { - "storageProfile": { - "imageReference": { - "sku": "2016-Datacenter", - "publisher": "MicrosoftWindowsServer", - "version": "latest", - "offer": "WindowsServer" - }, - "osDisk": { - "caching": "ReadWrite", - "managedDisk": { - "storageAccountType": "Standard_LRS" - }, - "createOption": "FromImage" - } - }, - "osProfile": { - "computerNamePrefix": "{vmss-name}", - "adminUsername": "{your-username}", - "secrets": [], - "windowsConfiguration": { - "provisionVMAgent": true, - "enableAutomaticUpdates": true - } + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" }, - "networkProfile": { - "networkInterfaceConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "dnsSettings": { - "dnsServers": [] - }, - "primary": true, - "enableIPForwarding": true, - "ipConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "subnet": { - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" - }, - "privateIPAddressVersion": "IPv4" - } - } - ], - "enableAcceleratedNetworking": false - } - } - ] + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" } }, - "upgradePolicy": { - "mode": "Manual" - }, - "automaticRepairsPolicy": { - "enabled": true, - "gracePeriod": "PT3M", - "maxInstanceRepairsPercent": 100 + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } }, - "provisioningState": "Creating" - }, - "location": "westus", - "type": "Microsoft.Compute/virtualMachineScaleSets", - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" - } - }, - "201": { - "body": { - "sku": { - "tier": "Standard", - "capacity": 3, - "name": "Standard_D1_v2" - }, - "name": "{vmss-name}", - "properties": { - "singlePlacementGroup": true, - "overprovision": true, - "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", - "virtualMachineProfile": { - "storageProfile": { - "imageReference": { - "sku": "2016-Datacenter", - "publisher": "MicrosoftWindowsServer", - "version": "latest", - "offer": "WindowsServer" - }, - "osDisk": { - "caching": "ReadWrite", - "managedDisk": { - "storageAccountType": "Standard_LRS" - }, - "createOption": "FromImage" - } - }, - "osProfile": { - "computerNamePrefix": "{vmss-name}", - "adminUsername": "{your-username}", - "secrets": [], - "windowsConfiguration": { - "provisionVMAgent": true, - "enableAutomaticUpdates": true - } - }, - "networkProfile": { - "networkInterfaceConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "dnsSettings": { - "dnsServers": [] - }, - "primary": true, - "enableIPForwarding": true, - "ipConfigurations": [ - { - "name": "{vmss-name}", - "properties": { - "subnet": { - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" - }, - "privateIPAddressVersion": "IPv4" - } + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" } - ], - "enableAcceleratedNetworking": false - } + } + ], + "enableAcceleratedNetworking": false } - ] - } - }, - "upgradePolicy": { - "mode": "Manual" - }, - "automaticRepairsPolicy": { - "enabled": true, - "gracePeriod": "PT3M", - "maxInstanceRepairsPercent": 100 - }, - "provisioningState": "Creating" + } + ] + } }, - "location": "westus", - "type": "Microsoft.Compute/virtualMachineScaleSets", - "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" - } + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" } } } - \ No newline at end of file +} From 59998f796f05580bc1d43ba39f0170204113fa91 Mon Sep 17 00:00:00 2001 From: "[MSFT] Bowen Wan" Date: Thu, 17 Oct 2019 14:28:25 +0800 Subject: [PATCH 13/54] Add "Allocating","Upgrading" and "Compiling" enum into DeploymentResourceStatus. (#7537) --- .../preview/2019-05-01-preview/appplatform.json | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json index c8634ddd25f8..9be220364c65 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json @@ -2326,7 +2326,10 @@ "Stopped", "Running", "Failed", - "Processing" + "Processing", + "Allocating", + "Upgrading", + "Compiling" ], "type": "string", "readOnly": true, @@ -2815,4 +2818,4 @@ ] } ] -} +} \ No newline at end of file From 5c127afd800093dcd7d32540e3aa2cc9a117a707 Mon Sep 17 00:00:00 2001 From: Yung-Shin Lin Date: Thu, 17 Oct 2019 01:13:40 -0700 Subject: [PATCH 14/54] Update for OCRLanguage parameter --- .../preview/v2.0/FormRecognizer.json | 24 ++++++++++++++----- .../v2.0/examples/LayoutBatchResult.json | 3 +-- 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index 7d769a16c505..3779046b8d25 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -413,11 +413,7 @@ ], "parameters": [ { - "name": "language", - "in": "query", - "description": "The IETF RFC 5646 language code of the text to be detected in the image. \"en\" (English) and \"es\" (Spanish) are supported.", - "required": true, - "type": "string" + "$ref": "#/parameters/OcrLanguage" }, { "$ref": "#/parameters/FileStream" @@ -994,7 +990,7 @@ } }, "AnalyzeLayoutResult": { - "description": "Analyze operation result.", + "description": "Analyze layout operation result.", "type": "object", "required": [ "version", @@ -1447,6 +1443,22 @@ "in": "path", "x-ms-skip-url-encoding": true }, + "OcrLanguage": { + "name": "language", + "in": "query", + "description": "The BCP-47 language code of the text to be detected in the image.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "x-ms-enum": { + "name": "OcrDetectionLanguage", + "modelAsString": true + }, + "enum": [ + "en", + "es" + ] + }, "FileStream": { "name": "fileStream", "description": ".json, .pdf, .jpg, .png or .tiff type file stream.", diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json index 55c72ff101f6..bffef056d5b8 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json @@ -16,8 +16,7 @@ "analyzeResult": { "version":"v2.0", "readResults":[], - "pageResults":[], - "errors":[] + "pageResults":[] } } } From e092f42391388582df37aa81ee2b7deab4b1c3a8 Mon Sep 17 00:00:00 2001 From: ramparab <49212302+ramparab@users.noreply.github.com> Date: Thu, 17 Oct 2019 01:26:00 -0700 Subject: [PATCH 15/54] Adding FR v2.0 API updates (#7303) * Adding FR v2.0 API updates * PR Validation: Fix typo, missing file ref. * PR Validation: Fix missed typo * PR Validation: fixing model verification errors, doc string fixes. * Fixing model verification, added Receipts endpoints, related examples. * Fixing semantic validation error * Update labelFile param * fixing types * Fixing model validation errors * Fixing model verification errors, other fixes. * Fixing mode verification error. * Fixing typo. * Fixing doc strings, Location header update, Change response code for Analyze calls * Incorporating feedback from Paul. * Feedback from Florian, verification fix. * Fixing for merge verification. * fixing for model verification tests * fixing model verification errors. * fixing example file to correct useLabelFile option. --- custom-words.txt | 1 + .../preview/v2.0/FormRecognizer.json | 1304 +++++++++++++++++ .../preview/v2.0/examples/AnalyzeBatch.json | 17 + .../v2.0/examples/AnalyzeOperationResult.json | 26 + .../preview/v2.0/examples/DeleteModel.json | 12 + .../preview/v2.0/examples/GetModel.json | 40 + .../preview/v2.0/examples/GetModels.json | 35 + .../preview/v2.0/examples/ReceiptsBatch.json | 16 + .../v2.0/examples/ReceiptsBatchResult.json | 27 + .../preview/v2.0/examples/TrainBatch.json | 18 + .../examples/TrainBatchWithSubFolders.json | 23 + .../data-plane/FormRecognizer/readme.md | 17 +- 12 files changed, 1535 insertions(+), 1 deletion(-) create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeBatch.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeOperationResult.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/DeleteModel.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModel.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatch.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatchResult.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatch.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatchWithSubFolders.json diff --git a/custom-words.txt b/custom-words.txt index 6736c2d69cfa..0fc88446917e 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1441,6 +1441,7 @@ timestep timezones tinyint Tokenizes +tombstoned toolchain toolset tooltips diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json new file mode 100644 index 000000000000..b83cd6c5a204 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -0,0 +1,1304 @@ +{ + "swagger": "2.0", + "info": { + "version": "2.0-preview", + "title": "Form Recognizer Client", + "description": "Extracts information from forms and images into structured data." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/formrecognizer/v2.0-preview", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/custom/models": { + "post": { + "summary": "Train Custom Model", + "description": "Create and train a custom model. The request must include a source parameter that is either an externally accessible Azure storage blob container Uri (preferably a Shared Access Signature Uri) or valid path to a data folder in a locally mounted drive. When local paths are specified, they must follow the Linux/Unix path format and be an absolute path rooted to the input mount configuration setting value e.g., if '{Mounts:Input}' configuration setting value is '/input' then a valid source path would be '/input/contosodataset'. All data to be trained is expected to be under the source folder or sub folders under it. Models are trained using documents that are of the following content type - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff'. Other type of content is ignored.", + "operationId": "TrainCustomModelAsync", + "consumes": [ + "application/json" + ], + "parameters": [ + { + "name": "trainRequest", + "in": "body", + "description": "Training request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/TrainRequest" + } + } + ], + "responses": { + "201": { + "description": "Request is queued successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being trained. The status of model training is specified in the status property at the model location." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Train custom model": { + "$ref": "./examples/TrainBatch.json" + }, + "Train custom model with subfolder filter options": { + "$ref": "./examples/TrainBatchWithSubFolders.json" + } + } + }, + "get": { + "summary": "List Custom Models", + "description": "Get information about all custom models", + "operationId": "GetCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": false, + "default": "full", + "type": "string", + "enum": [ + "full", + "summary" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "modelList" + }, + "x-ms-examples": { + "List custom models": { + "$ref": "./examples/GetModels.json" + } + } + } + }, + "/custom/models/{modelId}": { + "get": { + "summary": "Get Custom Model", + "description": "Get detailed information about a custom model.", + "operationId": "GetCustomModel", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "includeKeys", + "in": "query", + "description": "Include list of extracted keys in model information.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Model" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get custom model": { + "$ref": "./examples/GetModel.json" + } + } + }, + "delete": { + "summary": "Delete Custom Model", + "description": "Mark model for deletion. Model artifacts will be permanently removed within a predetermined period.", + "operationId": "DeleteCustomModel", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Successfully marked model for deletion. Model artifacts will be removed within predefined time period." + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete custom model": { + "$ref": "./examples/DeleteModel.json" + } + } + } + }, + "/custom/models/{modelId}/analyze": { + "post": { + "summary": "Analyze Form", + "description": "Extract key-value pairs, tables, and semantic values from a given document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png' or 'image/tiff'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeWithCustomModel", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze form with custom model": { + "$ref": "./examples/AnalyzeBatch.json" + } + } + } + }, + "/custom/models/{modelId}/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Form Result", + "description": "Obtain current status and the result of the analyze form operation.", + "operationId": "GetAnalyzeFormResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze form result": { + "$ref": "./examples/AnalyzeOperationResult.json" + } + } + } + }, + "/prebuilt/receipt/analyze": { + "post": { + "summary": "Analyze Receipt", + "description": "Extract field text and semantic values from a given receipt document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png' or 'image/tiff'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeReceiptAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze receipt": { + "$ref": "./examples/ReceiptsBatch.json" + } + } + } + }, + "/prebuilt/receipt/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Receipt Result", + "description": "Track the progress and obtain the result of the analyze receipt operation.", + "operationId": "GetAnalyzeReceiptResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze receipt result": { + "$ref": "./examples/ReceiptsBatchResult.json" + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "type": "string", + "description": "Status of the queued operation.", + "enum": [ + "notStarted", + "running", + "succeeded", + "failed" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + }, + "x-nullable": false + }, + "AnalyzeOperationResult": { + "description": "Status and result of the queued analyze operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) the analyze operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status is last updated.", + "type": "string", + "x-nullable": false + }, + "analyzeResult": { + "description": "Results of the analyze operation.", + "$ref": "#/definitions/AnalyzeResult" + } + } + }, + "TrainRequest": { + "description": "Request parameter to train a new custom model.", + "required": [ + "source" + ], + "type": "object", + "properties": { + "source": { + "description": "Source path containing the training documents.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "sourceFilter": { + "$ref": "#/definitions/TrainSourceFilter", + "description": "Filter to apply to the documents in the source path for training." + }, + "useLabelFile": { + "description": "Use label file for training a model.", + "type": "boolean", + "default": false + } + } + }, + "TrainSourceFilter": { + "description": "Filter to apply to the documents in the source path for training.", + "type": "object", + "properties": { + "prefix": { + "description": "A case-sensitive prefix string to filter documents in the source path for training. For example, when using a Azure storage blob Uri, use the prefix to restrict sub folders for training.", + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "includeSubFolders": { + "description": "A flag to indicate if sub folders within the set of prefix folders will also need to be included when searching for content to be preprocessed.", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "TrainResult": { + "description": "Custom model training result.", + "type": "object", + "required": [ + "trainingDocuments" + ], + "properties": { + "trainingDocuments": { + "description": "List of the documents used to train the model and any errors reported in each document.", + "type": "array", + "items": { + "$ref": "#/definitions/TrainingDocumentInfo" + } + }, + "fields": { + "description": "List of fields used to train the model and the train operation error reported by each.", + "type": "array", + "items": { + "$ref": "#/definitions/FormFieldsReport" + } + }, + "averageModelAccuracy": { + "description": "Average accuracy.", + "type": "number", + "x-nullable": false + }, + "errors": { + "description": "Errors returned during the training operation.", + "type": "array", + "items": { + "$ref": "#/definitions/FormOperationError" + } + } + } + }, + "SourcePath": { + "description": "Uri or local path to source data.", + "type": "object", + "properties": { + "source": { + "description": "File source path.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + } + } + }, + "SourceDataStream": { + "description": "A pdf document or image (jpg,png,tiff) file to analyze.", + "type": "object" + }, + "ModelInfo":{ + "description": "Basic custom model information.", + "type": "object", + "required": [ + "modelId", + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "status": { + "description": "Status of the model.", + "enum": [ + "creating", + "ready", + "invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "ModelStatus", + "modelAsString": false + }, + "x-nullable": false + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the model was created.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status is last updated.", + "type": "string", + "x-nullable": false + } + } + }, + "Models": { + "description": "Response to the list custom models operation.", + "type": "object", + "properties": { + "summary": { + "description": "Summary of all trained custom models.", + "type": "object", + "required": [ + "count", + "limit", + "lastUpdatedDateTime" + ], + "properties": { + "count": { + "description": "Current count of trained custom models.", + "type": "integer", + "x-nullable": false + }, + "limit": { + "description": "Max number of models that can be trained for this subscription.", + "type": "integer", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the summary is last updated.", + "type": "string", + "x-nullable": false + } + } + }, + "modelList": { + "description": "Collection of trained custom models.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelInfo" + } + }, + "nextLink": { + "description": "Link to the next page of custom models.", + "type": "string" + } + } + }, + "Model": { + "description": "Response to the get custom model operation.", + "type": "object", + "required": [ + "modelInfo" + ], + "properties": { + "modelInfo":{ + "$ref": "#/definitions/ModelInfo", + "description": "Basic custom model information." + }, + "keys": { + "$ref": "#/definitions/KeysResult", + "description": "Keys extracted by the custom model." + }, + "trainResult": { + "description": "Custom model training result.", + "$ref": "#/definitions/TrainResult" + } + } + }, + "KeysResult": { + "description": "Keys extracted by the custom model.", + "type": "object", + "required": [ + "clusters" + ], + "properties": { + "clusters": { + "description": "Object mapping clusterIds to a list of keys.", + "type": "object", + "additionalProperties": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + } + } + } + }, + "TrainingDocumentInfo": { + "description": "Report for a custom model training document.", + "type": "object", + "required": [ + "documentName", + "pages", + "errors", + "status" + ], + "properties": { + "documentName": { + "description": "Training document name.", + "type": "string" + }, + "pages": { + "format": "int32", + "description": "Total number of pages trained.", + "type": "integer", + "x-nullable": false + }, + "errors": { + "description": "List of errors.", + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "description": "Status of the training operation.", + "enum": [ + "succeeded", + "partiallySucceeded", + "failed" + ], + "type": "string", + "x-ms-enum": { + "name": "TrainStatus", + "modelAsString": false + }, + "x-nullable": false + } + } + }, + "FormFieldsReport": { + "description": "Report for a custom model training field.", + "type": "object", + "required": [ + "fieldName", + "accuracy" + ], + "properties": { + "fieldName": { + "description": "Training field name.", + "type": "string" + }, + "accuracy": { + "description": "Estimated extraction accuracy for this field.", + "type": "number", + "x-nullable": false + } + } + }, + "FormOperationError": { + "description": "Error reported during an operation.", + "type": "object", + "required": [ + "message" + ], + "properties": { + "message": { + "description": "Error message.", + "type": "string" + } + } + }, + "ErrorResponse": { + "type": "object", + "required": [ + "error" + ], + "properties": { + "error": { + "$ref": "#/definitions/ErrorInformation" + } + } + }, + "ErrorInformation": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "AnalyzeResult": { + "description": "Analyze operation result.", + "type": "object", + "required": [ + "version", + "readResults" + ], + "properties": { + "version": { + "description": "Version of schema used for this result.", + "type": "string" + }, + "readResults": { + "description": "Text extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadResult" + } + }, + "pageResults": { + "description": "Page-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/PageResult" + } + }, + "documentResults": { + "description": "Document-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/DocumentResult" + } + }, + "errors": { + "description": "List of errors reported during the analyze operation.", + "type": "array", + "items": { + "$ref": "#/definitions/FormOperationError" + } + } + } + }, + "ReadResult": { + "description": "Text extracted from a page in the input document.", + "type": "object", + "required": [ + "page", + "angle", + "width", + "height", + "unit" + ], + "properties": { + "page": { + "description": "The 1-based page number in the input document.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "angle": { + "description": "The general orientation of the text in clockwise direction, measured in degrees between (-180, 180].", + "type": "number", + "minimum": -180, + "maximum": 180, + "exclusiveMinimum": true, + "x-nullable": false + }, + "width": { + "description": "The width of the image/PDF in pixels/inches, respectively.", + "type": "number", + "minimum": 0, + "x-nullable": false + }, + "height": { + "description": "The height of the image/PDF in pixels/inches, respectively.", + "type": "number", + "minimum": 0, + "x-nullable": false + }, + "unit": { + "description": "The unit used by the width, height and boundingBox properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".", + "type": "string", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "LengthUnit", + "modelAsString": false + }, + "x-nullable": false + }, + "language": { + "description": "The detected language on the page overall.", + "$ref": "#/definitions/Language" + }, + "lines": { + "description": "When includeTextDetails is set to true, a list of recognized text lines. The maximum number of lines returned is 300 per page. The lines are sorted top to bottom, left to right, although in certain cases proximity is treated with higher priority. As the sorting order depends on the detected text, it may change across images and OCR version updates. Thus, business logic should be built upon the actual line location instead of order.", + "type": "array", + "items": { + "$ref": "#/definitions/TextLine" + } + } + } + }, + "Language": { + "description": "Language code", + "type": "string", + "enum": [ + "en", + "es" + ], + "x-ms-enum": { + "name": "Language", + "modelAsString": true + }, + "x-nullable": false + }, + "TextLine": { + "description": "An object representing an extracted text line.", + "type": "object", + "required": [ + "text", + "boundingBox", + "words" + ], + "properties": { + "text": { + "description": "The text content of the line.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of an extracted line.", + "$ref": "#/definitions/BoundingBox" + }, + "language": { + "description": "The detected language of this line, if different from the overall page language.", + "$ref": "#/definitions/Language" + }, + "words": { + "description": "List of words in the text line.", + "type": "array", + "items": { + "$ref": "#/definitions/TextWord" + } + } + } + }, + "TextWord": { + "description": "An object representing a word.", + "type": "object", + "required": [ + "boundingBox", + "text", + "confidence" + ], + "properties": { + "text": { + "description": "The text content of the word.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of an extracted word.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + } + } + }, + "BoundingBox": { + "description": "Quadrangle bounding box, with coordinates specified relative to the top-left of the original image. The eight numbers represent the four points, clockwise from the top-left corner relative to the text orientation. For image, the (x, y) coordinates are measured in pixels. For PDF, the (x, y) coordinates are measured in inches.", + "type": "array", + "minItems": 8, + "maxItems": 8, + "items": { + "type": "number", + "x-nullable": false + } + }, + "PageResult": { + "description": "Extracted information from a single page.", + "type": "object", + "required": [ + "page" + ], + "properties": { + "page": { + "description": "Page number.", + "type": "integer", + "format": "int32", + "minimum": 1, + "x-nullable": false + }, + "clusterId": { + "description": "Cluster identifier.", + "type": "integer", + "format": "int32", + "minimum": 0, + "x-nullable": false + }, + "keyValuePairs": { + "description": "List of key-value pairs extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValuePair" + } + }, + "tables": { + "description": "List of data tables extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/DataTable" + } + } + } + }, + "KeyValuePair": { + "description": "Information about the extracted key-value pair.", + "type": "object", + "required": [ + "key", + "value", + "confidence" + ], + "properties": { + "label": { + "description": "A user defined label for the key/value pair entry.", + "type": "string" + }, + "key": { + "description": "Information about the extracted key in a key-value pair.", + "$ref": "#/definitions/KeyValueElement" + }, + "value": { + "description": "Information about the extracted value in a key-value pair.", + "$ref": "#/definitions/KeyValueElement" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + } + } + }, + "KeyValueElement": { + "description": "Information about the extracted key or value in a key-value pair.", + "type": "object", + "required": [ + "text" + ], + "properties": { + "text": { + "description": "The text content of the key or value.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the key or value.", + "$ref": "#/definitions/BoundingBox" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this key or value.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + } + } + }, + "ElementReference": { + "description": "Reference to a line or word.", + "type": "string" + }, + "DataTable": { + "description": "Information about the extracted table contained in a page.", + "type": "object", + "required": [ + "rows", + "columns", + "cells" + ], + "properties": { + "rows": { + "description": "Number of rows.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "columns": { + "description": "Number of columns.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "cells": { + "description": "List of cells contained in the table.", + "type": "array", + "items": { + "$ref": "#/definitions/DataTableCell" + } + } + } + }, + "DataTableCell": { + "description": "Information about the extracted cell in a table.", + "type": "object", + "required": [ + "rowIndex", + "columnIndex", + "text", + "boundingBox", + "confidence" + ], + "properties": { + "rowIndex": { + "description": "Row index of the cell.", + "type": "integer", + "minimum": 0, + "x-nullable": false + }, + "columnIndex": { + "description": "Column index of the cell.", + "type": "integer", + "minimum": 0, + "x-nullable": false + }, + "rowSpan": { + "description": "Number of rows spanned by this cell.", + "type": "integer", + "minimum": 1, + "default": 1, + "x-nullable": false + }, + "columnSpan": { + "description": "Number of columns spanned by this cell.", + "type": "integer", + "minimum": 1, + "default": 1, + "x-nullable": false + }, + "text": { + "description": "Text content of the cell.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the cell.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this table cell.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + }, + "isHeader": { + "description": "Is the current cell a header cell?", + "type": "boolean", + "default": false, + "x-nullable": false + }, + "isFooter": { + "description": "Is the current cell a footer cell?", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "DocumentResult": { + "description": "A set of extracted fields corresponding to the input document.", + "required": [ + "docType", + "pageRange", + "fields" + ], + "properties": { + "docType": { + "description": "Document type.", + "type": "string" + }, + "pageRange": { + "description": "First and last page number where the document is found.", + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "integer", + "minimum": 1, + "x-nullable": false + } + }, + "fields": { + "description": "Dictionary of named field values.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FieldValue" + } + } + } + }, + "FieldValue": { + "description": "Recognized field value.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Type of field value.", + "$ref": "#/definitions/FieldValueType" + }, + "valueString": { + "description": "String value.", + "type": "string" + }, + "valueDate": { + "description": "Date value.", + "type": "string", + "format": "date-time", + "x-nullable": false + }, + "valueTime": { + "description": "Time value.", + "type": "string", + "format": "date-time", + "x-nullable": false + }, + "valuePhoneNumber": { + "description": "Phone number value.", + "type": "string" + }, + "valueNumber": { + "description": "Floating point value.", + "type": "number", + "x-nullable": false + }, + "valueInteger": { + "description": "Integer value.", + "type": "integer", + "x-nullable": false + }, + "valueArray": { + "description": "Array of field values.", + "type": "array", + "items": { + "$ref": "#/definitions/FieldValue" + } + }, + "valueObject": { + "description": "Dictionary of named field values.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FieldValue" + } + }, + "text": { + "description": "Text content of the extracted field.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the field value, if appropriate.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence score.", + "$ref": "#/definitions/Confidence" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this field.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + }, + "page": { + "description": "The 1-based page number in the input document.", + "type": "integer", + "minimum": 1, + "x-nullable": false + } + } + }, + "FieldValueType": { + "type": "string", + "description": "Semantic data type of the field value.", + "enum": [ + "string", + "date", + "time", + "phoneNumber", + "number", + "integer", + "array", + "object" + ], + "x-ms-enum": { + "name": "FieldValueType", + "modelAsString": false + }, + "x-nullable": false + }, + "Confidence": { + "description": "Confidence value.", + "type": "number", + "minimum": 0, + "maximum": 1, + "x-nullable": false + } + }, + "parameters": { + "Endpoint": { + "name": "endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus2.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "FileStream": { + "name": "fileStream", + "description": ".json, .pdf, .jpg, .png or .tiff type file stream.", + "x-ms-parameter-location": "method", + "in": "body", + "schema": { + "$ref": "#/definitions/SourceDataStream" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeBatch.json new file mode 100644 index 000000000000..30c55dcbfae4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeBatch.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{Model Id}", + "body": { + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.0-preview/custom/models/{modelId}/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeOperationResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeOperationResult.json new file mode 100644 index 000000000000..79916579278d --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/AnalyzeOperationResult.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{model Id}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body":{ + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version":"v2.0", + "readResults":[], + "pageResults":[], + "documentResults":[], + "errors":[] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/DeleteModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/DeleteModel.json new file mode 100644 index 000000000000..7d952a75ac22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/DeleteModel.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{Model Id}", + "body": {} + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModel.json new file mode 100644 index 000000000000..7a2fa74b83e3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModel.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{Model Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "modelInfo": { + "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z" + }, + "keys": { + "clusters": { + "0": [ + "Invoice", + "123112313" + ], + "1": [ + "Please remit payment to:", + "Microsoft" + ] + } + }, + "trainResult": { + "trainingDocuments":[], + "fields":[], + "averageModelAccuracy":0, + "errors":[ + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json new file mode 100644 index 000000000000..01064aba1fb1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "full", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary":{ + "count":5, + "limit":5000, + "lastUpdatedDateTime":"2019-05-01T10:53:21Z" + }, + "modelList": [ + { + "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z" + }, + { + "modelId": "f973e3c1-0001-43bb-bea8-49d0603ab3a8", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z" + } + ], + "nextLink":"" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatch.json new file mode 100644 index 000000000000..8e59339b7846 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatch.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.0-preview/prebuilt/receipt/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatchResult.json new file mode 100644 index 000000000000..4b03d3e3150a --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/ReceiptsBatchResult.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{model Id}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body":{ + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version":"v2.0", + "readResults":[], + "pageResults":[], + "documentResults":[], + "errors":[] + } + } + } + } + } + \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatch.json new file mode 100644 index 000000000000..ceece7e8dd20 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatch.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "trainRequest": { + "source": "/input/data1" + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.0-preview/custom/models/{modelId}" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatchWithSubFolders.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatchWithSubFolders.json new file mode 100644 index 000000000000..09ab7be43ad2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/TrainBatchWithSubFolders.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "trainRequest": { + "source": "/input/data1", + "sourceFilter": { + "prefix": "", + "includeSubFolders": false + }, + "useLabelFile": false + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.0-preview/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md index 1ecb8d09f9fa..14a186a11262 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md +++ b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md @@ -4,7 +4,14 @@ Configuration for generating Form Recognizer SDK. -The current release is `release_1_0`. +The current release is `release_2_0`. + +``` yaml + +tag: release_2_0 +add-credentials: true +openapi-type: data-plane +``` ``` yaml @@ -14,6 +21,14 @@ openapi-type: data-plane ``` # Releases +### Release 2.0 +These settings apply only when `--tag=release_2_0` is specified on the command line. + +``` yaml $(tag) == 'release_2_0' +input-file: + - preview/v2.0/FormRecognizer.json +``` + ### Release 1.0 These settings apply only when `--tag=release_1_0` is specified on the command line. From 4de63a0387443e9d08213abe4bc32787a5156483 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 17 Oct 2019 08:27:10 +0000 Subject: [PATCH 16/54] regenerated all-api-versions --- .../cognitiveservices/data-plane/FormRecognizer/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md index 14a186a11262..969d24a80c96 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md +++ b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md @@ -101,6 +101,7 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/preview/v2.0/FormRecognizer.json - $(this-folder)/preview/v1.0/FormRecognizer.json - $(this-folder)/preview/v1.0/FormRecognizerReceipt.json - $(this-folder)/preview/v1.0/FormRecognizerReceiptOcr.json From 6eca8887f9af0bf60877f545666e1efd8e699e7a Mon Sep 17 00:00:00 2001 From: Yung-Shin Lin Date: Thu, 17 Oct 2019 08:52:25 -0700 Subject: [PATCH 17/54] Update from PR comment --- .../preview/v2.0/FormRecognizer.json | 73 +------------------ .../v2.0/examples/LayoutBatchResult.json | 4 +- 2 files changed, 6 insertions(+), 71 deletions(-) diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index 3779046b8d25..b7a116579f34 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -437,7 +437,7 @@ } }, "x-ms-examples": { - "Analyze Layout": { + "Analyze layout": { "$ref": "./examples/LayoutBatch.json" } } @@ -446,6 +446,7 @@ "/layout/analyzeResults/{resultId}": { "get": { "summary": "Get Analyze Layout Result", + "description": "Track the progress and obtain the result of the analyze layout operation", "operationId": "GetAnalyzeLayoutResult", "consumes": [], "produces": [ @@ -465,7 +466,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/AnalyzeLayoutOperationResult" + "$ref": "#/definitions/AnalyzeOperationResult" } }, "default": { @@ -958,72 +959,6 @@ } } }, - "AnalyzeLayoutOperationResult": { - "description": "Status and result of the queued analyze layout operation.", - "type": "object", - "required": [ - "status", - "createdDateTime", - "lastUpdatedDateTime" - ], - "properties": { - "status": { - "description": "Operation status.", - "$ref": "#/definitions/OperationStatus" - }, - "createdDateTime": { - "format": "date-time", - "description": "Date and time (UTC) the analyze operation was submitted.", - "type": "string", - "x-nullable": false - }, - "lastUpdatedDateTime": { - "format": "date-time", - "description": "Date and time (UTC) when the status is last updated.", - "type": "string", - "x-nullable": false - }, - "analyzeResult": { - "description": "Results of the analyze layout operation.", - "$ref": "#/definitions/AnalyzeLayoutResult" - } - } - }, - "AnalyzeLayoutResult": { - "description": "Analyze layout operation result.", - "type": "object", - "required": [ - "version", - "readResults" - ], - "properties": { - "version": { - "description": "Version of schema used for this result.", - "type": "string" - }, - "readResults": { - "description": "Text extracted from the input.", - "type": "array", - "items": { - "$ref": "#/definitions/ReadResult" - } - }, - "pageResults": { - "description": "Page-level information extracted from the input.", - "type": "array", - "items": { - "$ref": "#/definitions/PageResult" - } - }, - "errors": { - "description": "List of errors reported during the analyze operation.", - "type": "array", - "items": { - "$ref": "#/definitions/FormOperationError" - } - } - } - }, "Language": { "description": "Language code", "type": "string", @@ -1451,7 +1386,7 @@ "x-ms-parameter-location": "method", "type": "string", "x-ms-enum": { - "name": "OcrDetectionLanguage", + "name": "Language", "modelAsString": true }, "enum": [ diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json index bffef056d5b8..c694deac5388 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/LayoutBatchResult.json @@ -10,7 +10,7 @@ "responses": { "200": { "body":{ - "status": "running", + "status": "succeeded", "createdDateTime": "2019-05-01T10:53:21Z", "lastUpdatedDateTime": "2019-05-01T10:53:23Z", "analyzeResult": { @@ -21,4 +21,4 @@ } } } -} \ No newline at end of file +} From 732f08f26fb75449bea47924ba21b47b7c51ae87 Mon Sep 17 00:00:00 2001 From: Priyaranjan Pandey Date: Thu, 17 Oct 2019 19:48:32 -0700 Subject: [PATCH 18/54] [Storage] Support private endpoint connection apis on new api version 2019-06-01 (#7440) * [Storage] Add 2019-06-01 api version * [Storage] Private Endpoint Connection swagger * Added missing put privateendpoint connection definition * PUT privateendpointconnection definition * some refactoring/renaming * SDK build failure due to same enum name * Marking PrivateLinkServiceConnectionState.status as enum * Added default error response for new apis --- .../stable/2019-06-01/blob.json | 1368 ++++ .../BlobContainersClearLegalHold.json | 25 + .../examples/BlobContainersDelete.json | 14 + ...lobContainersDeleteImmutabilityPolicy.json | 26 + ...lobContainersExtendImmutabilityPolicy.json | 30 + .../examples/BlobContainersGet.json | 81 + .../BlobContainersGetImmutabilityPolicy.json | 25 + .../examples/BlobContainersLease_Acquire.json | 24 + .../examples/BlobContainersLease_Break.json | 24 + .../examples/BlobContainersList.json | 46 + .../BlobContainersLockImmutabilityPolicy.json | 25 + .../examples/BlobContainersPatch.json | 35 + .../examples/BlobContainersPut.json | 27 + .../BlobContainersPutImmutabilityPolicy.json | 30 + .../examples/BlobContainersSetLegalHold.json | 29 + .../2019-06-01/examples/BlobServicesGet.json | 91 + .../2019-06-01/examples/BlobServicesList.json | 94 + .../2019-06-01/examples/BlobServicesPut.json | 165 + .../2019-06-01/examples/FileServicesGet.json | 82 + .../2019-06-01/examples/FileServicesList.json | 85 + .../2019-06-01/examples/FileServicesPut.json | 147 + .../2019-06-01/examples/FileSharesDelete.json | 14 + .../2019-06-01/examples/FileSharesGet.json | 24 + .../2019-06-01/examples/FileSharesList.json | 38 + .../2019-06-01/examples/FileSharesPatch.json | 31 + .../2019-06-01/examples/FileSharesPut.json | 27 + .../2019-06-01/examples/OperationsList.json | 473 ++ .../stable/2019-06-01/examples/SKUList.json | 6454 +++++++++++++++++ .../StorageAccountCheckNameAvailability.json | 17 + .../examples/StorageAccountCreate.json | 60 + .../examples/StorageAccountDelete.json | 13 + .../StorageAccountDeleteManagementPolicy.json | 14 + ...ccountDeletePrivateEndpointConnection.json | 14 + .../examples/StorageAccountFailover.json | 13 + .../StorageAccountGetManagementPolicy.json | 59 + ...geAccountGetPrivateEndpointConnection.json | 30 + .../examples/StorageAccountGetProperties.json | 57 + .../examples/StorageAccountList.json | 183 + .../StorageAccountListAccountSAS.json | 25 + .../StorageAccountListByResourceGroup.json | 78 + .../examples/StorageAccountListKeys.json | 27 + .../StorageAccountListLocationUsage.json | 24 + ...torageAccountListPrivateLinkResources.json | 101 + .../StorageAccountListServiceSAS.json | 22 + ...geAccountPutPrivateEndpointConnection.json | 38 + .../examples/StorageAccountRegenerateKey.json | 30 + ...torageAccountRevokeUserDelegationKeys.json | 11 + .../StorageAccountSetManagementPolicy.json | 100 + .../examples/StorageAccountUpdate.json | 59 + .../stable/2019-06-01/file.json | 604 ++ .../stable/2019-06-01/storage.json | 2789 +++++++ .../storage/resource-manager/readme.md | 27 +- 52 files changed, 13928 insertions(+), 1 deletion(-) create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersClearLegalHold.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDelete.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDeleteImmutabilityPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersExtendImmutabilityPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Acquire.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Break.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLockImmutabilityPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPatch.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersSetLegalHold.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesDelete.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPatch.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/OperationsList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/SKUList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCheckNameAvailability.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDelete.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteManagementPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeletePrivateEndpointConnection.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountFailover.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetManagementPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPrivateEndpointConnection.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetProperties.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListAccountSAS.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListKeys.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListLocationUsage.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateLinkResources.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListServiceSAS.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutPrivateEndpointConnection.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKey.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRevokeUserDelegationKeys.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json new file mode 100644 index 000000000000..c699317de8db --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json @@ -0,0 +1,1368 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices": { + "get": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_List", + "x-ms-examples": { + "ListBlobServices": { + "$ref": "./examples/BlobServicesList.json" + } + }, + "description": "List blob services of storage account. It returns a collection of one object named default.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List blob services operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobServiceItems" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}": { + "put": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_SetServiceProperties", + "x-ms-examples": { + "PutBlobServices": { + "$ref": "./examples/BlobServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobServicesName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + }, + "description": "The properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Blob service successfully.", + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + } + } + } + }, + "get": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_GetServiceProperties", + "x-ms-examples": { + "GetBlobServices": { + "$ref": "./examples/BlobServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobServicesName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Blob service.", + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers": { + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_List", + "x-ms-examples": { + "ListContainers": { + "$ref": "./examples/BlobContainersList.json" + } + }, + "description": "Lists all containers and does not support a prefix like data plane. Also SRP today does not return continuation token.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$skipToken", + "in": "query", + "type": "string", + "description": "Optional. Continuation token for the list operation." + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional. Specified maximum number of containers that can be included in the list." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional. When specified, only container names starting with the filter will be listed." + } + ], + "responses": { + "200": { + "description": "OK -- List Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/ListContainerItems" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}": { + "put": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Create", + "x-ms-examples": { + "PutContainers": { + "$ref": "./examples/BlobContainersPut.json" + } + }, + "description": "Creates a new container under the specified account as described by request body. The container resource includes metadata and properties for that container. It does not include a list of the blobs contained by the container. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "name": "blobContainer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobContainer" + }, + "description": "Properties of the blob container to create." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created -- Create Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + }, + "200": { + "description": "OK -- The Container is already created.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + } + } + }, + "patch": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Update", + "x-ms-examples": { + "UpdateContainers": { + "$ref": "./examples/BlobContainersPatch.json" + } + }, + "description": "Updates container properties as specified in request body. Properties not mentioned in the request will be unchanged. Update fails if the specified container doesn't already exist. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "name": "blobContainer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobContainer" + }, + "description": "Properties to update for the blob container." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Update Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer", + "description": "Properties of the updated blob container." + } + } + } + }, + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Get", + "x-ms-examples": { + "GetContainers": { + "$ref": "./examples/BlobContainersGet.json" + } + }, + "description": "Gets properties of a specified container. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + } + } + }, + "delete": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Delete", + "x-ms-examples": { + "DeleteContainers": { + "$ref": "./examples/BlobContainersDelete.json" + } + }, + "description": "Deletes specified container under its account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete Container operation completed successfully." + }, + "204": { + "description": "No Content -- The Container not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_SetLegalHold", + "x-ms-examples": { + "SetLegalHoldContainers": { + "$ref": "./examples/BlobContainersSetLegalHold.json" + } + }, + "description": "Sets legal hold tags. Setting the same tag results in an idempotent operation. SetLegalHold follows an append pattern and does not clear out the existing tags that are not specified in the request.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "LegalHold", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LegalHold" + }, + "description": "The LegalHold property that will be set to a blob container." + } + ], + "responses": { + "200": { + "description": "OK -- Set legal hold tags for Container completed successfully.", + "schema": { + "$ref": "#/definitions/LegalHold" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ClearLegalHold", + "x-ms-examples": { + "ClearLegalHoldContainers": { + "$ref": "./examples/BlobContainersClearLegalHold.json" + } + }, + "description": "Clears legal hold tags. Clearing the same or non-existent tag results in an idempotent operation. ClearLegalHold clears out only the specified tags in the request.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "LegalHold", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LegalHold" + }, + "description": "The LegalHold property that will be clear from a blob container." + } + ], + "responses": { + "200": { + "description": "OK -- Clear legal hold tags for Container completed successfully.", + "schema": { + "$ref": "#/definitions/LegalHold" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}": { + "put": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_CreateOrUpdateImmutabilityPolicy", + "x-ms-examples": { + "CreateOrUpdateImmutabilityPolicy": { + "$ref": "./examples/BlobContainersPutImmutabilityPolicy.json" + } + }, + "description": "Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but not required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "description": "The ImmutabilityPolicy Properties that will be created or updated to a blob container." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Creates or updates container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + }, + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_GetImmutabilityPolicy", + "x-ms-examples": { + "GetImmutabilityPolicy": { + "$ref": "./examples/BlobContainersGetImmutabilityPolicy.json" + } + }, + "description": "Gets the existing immutability policy along with the corresponding ETag in response headers and body.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Gets container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + }, + "delete": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_DeleteImmutabilityPolicy", + "x-ms-examples": { + "DeleteImmutabilityPolicy": { + "$ref": "./examples/BlobContainersDeleteImmutabilityPolicy.json" + } + }, + "description": "Aborts an unlocked immutability policy. The response of delete has immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is required for this operation. Deleting a locked immutability policy is not allowed, only way is to delete the container after deleting all blobs inside the container.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Deletes container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_LockImmutabilityPolicy", + "x-ms-examples": { + "LockImmutabilityPolicy": { + "$ref": "./examples/BlobContainersLockImmutabilityPolicy.json" + } + }, + "description": "Sets the ImmutabilityPolicy to Locked state. The only action allowed on a Locked policy is ExtendImmutabilityPolicy action. ETag in If-Match is required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Locks container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ExtendImmutabilityPolicy", + "x-ms-examples": { + "ExtendImmutabilityPolicy": { + "$ref": "./examples/BlobContainersExtendImmutabilityPolicy.json" + } + }, + "description": "Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only action allowed on a Locked policy will be this action. ETag in If-Match is required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "description": "The ImmutabilityPolicy Properties that will be extended for a blob container." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Extends container ImmutabilityPolicy operation completed successfully..", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Lease", + "x-ms-examples": { + "Acquire a lease on a container": { + "$ref": "./examples/BlobContainersLease_Acquire.json" + }, + "Break a lease on a container": { + "$ref": "./examples/BlobContainersLease_Break.json" + } + }, + "description": "The Lease Container operation establishes and manages a lock on a container for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/LeaseContainerRequest" + }, + "description": "Lease Container request body." + } + ], + "responses": { + "200": { + "description": "OK -- Lease Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/LeaseContainerResponse" + } + } + } + } + } + }, + "definitions": { + "ContainerProperties": { + "properties": { + "publicAccess": { + "type": "string", + "enum": [ + "Container", + "Blob", + "None" + ], + "x-ms-enum": { + "name": "PublicAccess", + "modelAsString": false + }, + "description": "Specifies whether data in the container may be accessed publicly and the level of access." + }, + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the container was last modified." + }, + "leaseStatus": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": true + }, + "description": "The lease status of the container." + }, + "leaseState": { + "type": "string", + "readOnly": true, + "enum": [ + "Available", + "Leased", + "Expired", + "Breaking", + "Broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": true + }, + "description": "Lease state of the container." + }, + "leaseDuration": { + "type": "string", + "readOnly": true, + "enum": [ + "Infinite", + "Fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": true + }, + "description": "Specifies whether the lease on a container is of infinite or fixed duration, only when the container is leased." + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair to associate with the container as metadata." + }, + "immutabilityPolicy": { + "readOnly": true, + "$ref": "#/definitions/ImmutabilityPolicyProperties", + "x-ms-client-name": "ImmutabilityPolicy", + "description": "The ImmutabilityPolicy property of the container." + }, + "legalHold": { + "readOnly": true, + "$ref": "#/definitions/LegalHoldProperties", + "description": "The LegalHold property of the container." + }, + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "hasImmutabilityPolicy": { + "type": "boolean", + "readOnly": true, + "description": "The hasImmutabilityPolicy public property is set to true by SRP if ImmutabilityPolicy has been created for this container. The hasImmutabilityPolicy public property is set to false by SRP if ImmutabilityPolicy has not been created for this container." + } + }, + "description": "The properties of a container." + }, + "BlobContainer": { + "properties": { + "properties": { + "$ref": "#/definitions/ContainerProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "ContainerProperties", + "description": "Properties of the blob container." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "Properties of the blob container, including Id, resource name, resource type, Etag." + }, + "ImmutabilityPolicyProperty": { + "properties": { + "immutabilityPeriodSinceCreationInDays": { + "type": "integer", + "description": "The immutability period for the blobs in the container since the policy creation, in days." + }, + "state": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyState", + "modelAsString": true + }, + "description": "The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked." + } + }, + "required": [ + "immutabilityPeriodSinceCreationInDays" + ], + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "ImmutabilityPolicyProperties": { + "properties": { + "properties": { + "$ref": "#/definitions/ImmutabilityPolicyProperty", + "x-ms-client-flatten": true, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "ImmutabilityPolicy Etag." + }, + "updateHistory": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/UpdateHistoryProperty" + }, + "description": "The ImmutabilityPolicy update history of the blob container." + } + }, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "ImmutabilityPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ImmutabilityPolicyProperty", + "x-ms-client-flatten": true, + "description": "The properties of an ImmutabilityPolicy of a blob container." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "required": [ + "properties" + ], + "description": "The ImmutabilityPolicy property of a blob container, including Id, resource name, resource type, Etag." + }, + "UpdateHistoryProperty": { + "properties": { + "update": { + "type": "string", + "readOnly": true, + "enum": [ + "put", + "lock", + "extend" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyUpdateType", + "modelAsString": true + }, + "description": "The ImmutabilityPolicy update type of a blob container, possible values include: put, lock and extend." + }, + "immutabilityPeriodSinceCreationInDays": { + "type": "integer", + "readOnly": true, + "description": "The immutability period for the blobs in the container since the policy creation, in days." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the ImmutabilityPolicy was updated." + }, + "objectIdentifier": { + "type": "string", + "readOnly": true, + "description": "Returns the Object ID of the user who updated the ImmutabilityPolicy." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "Returns the Tenant ID that issued the token for the user who updated the ImmutabilityPolicy." + }, + "upn": { + "type": "string", + "readOnly": true, + "description": "Returns the User Principal Name of the user who updated the ImmutabilityPolicy." + } + }, + "description": "An update history of the ImmutabilityPolicy of a blob container." + }, + "LegalHoldProperties": { + "properties": { + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/TagProperty" + }, + "description": "The list of LegalHold tags of a blob container." + } + }, + "description": "The LegalHold property of a blob container." + }, + "TagProperty": { + "properties": { + "tag": { + "type": "string", + "readOnly": true, + "description": "The tag value." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the tag was added." + }, + "objectIdentifier": { + "type": "string", + "readOnly": true, + "description": "Returns the Object ID of the user who added the tag." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "Returns the Tenant ID that issued the token for the user who added the tag." + }, + "upn": { + "type": "string", + "readOnly": true, + "description": "Returns the User Principal Name of the user who added the tag." + } + }, + "description": "A tag of the LegalHold of a blob container." + }, + "LegalHold": { + "properties": { + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "tags": { + "type": "array", + "items": { + "type": "string", + "maxLength": 23, + "minLength": 3 + }, + "description": "Each tag should be 3 to 23 alphanumeric characters and is normalized to lower case at SRP." + } + }, + "required": [ + "tags" + ], + "description": "The LegalHold property of a blob container." + }, + "ListContainerItem": { + "properties": { + "properties": { + "$ref": "#/definitions/ContainerProperties", + "x-ms-client-flatten": true, + "description": "The blob container properties be listed out." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The blob container properties be listed out." + }, + "ListContainerItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ListContainerItem" + }, + "description": "List of blobs containers returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of containers. Returned when total number of requested containers exceed maximum page size.", + "readOnly": true + } + }, + "description": "Response schema. Contains list of blobs returned, and if paging is requested or required, a URL to next page of containers." + }, + "BlobServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "#/definitions/CorsRules", + "description": "Specifies CORS rules for the Blob service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Blob service." + }, + "defaultServiceVersion": { + "type": "string", + "description": "DefaultServiceVersion indicates the default version to use for requests to the Blob service if an incoming request’s version is not specified. Possible values include version 2008-10-27 and all more recent versions." + }, + "deleteRetentionPolicy": { + "$ref": "#/definitions/DeleteRetentionPolicy", + "description": "The blob service properties for soft delete." + }, + "automaticSnapshotPolicyEnabled": { + "type": "boolean", + "description": "Automatic Snapshot is enabled if set to true." + }, + "changeFeed": { + "$ref": "#/definitions/ChangeFeed", + "description": "The blob service properties for change feed events." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "BlobServiceProperties", + "description": "The properties of a storage account’s Blob service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Blob service." + }, + "BlobServiceItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobServiceProperties" + }, + "description": "List of blob services returned.", + "readOnly": true + } + } + }, + "ChangeFeed": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether change feed event logging is enabled for the Blob service." + } + }, + "description": "The blob service properties for change feed events." + }, + "DeleteRetentionPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether DeleteRetentionPolicy is enabled for the Blob service." + }, + "days": { + "type": "integer", + "minimum": 1, + "maximum": 365, + "description": "Indicates the number of days that the deleted blob should be retained. The minimum specified value can be 1 and the maximum value can be 365." + } + }, + "description": "The blob service properties for soft delete." + }, + "CorsRules": { + "properties": { + "corsRules": { + "type": "array", + "items": { + "description": "Specifies a CORS rule for the Blob service. ", + "$ref": "#/definitions/CorsRule" + }, + "description": "The List of CORS rules. You can include up to five CorsRule elements in the request. " + } + }, + "description": "Sets the CORS rules. You can include up to five CorsRule elements in the request. " + }, + "CorsRule": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or \"*\" to allow all domains" + }, + "allowedMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "DELETE", + "GET", + "HEAD", + "MERGE", + "POST", + "OPTIONS", + "PUT" + ] + }, + "description": "Required if CorsRule element is present. A list of HTTP methods that are allowed to be executed by the origin." + }, + "maxAgeInSeconds": { + "type": "integer", + "description": "Required if CorsRule element is present. The number of seconds that the client/browser should cache a preflight response." + }, + "exposedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of response headers to expose to CORS clients." + }, + "allowedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of headers allowed to be part of the cross-origin request." + } + }, + "required": [ + "allowedOrigins", + "allowedMethods", + "maxAgeInSeconds", + "exposedHeaders", + "allowedHeaders" + ], + "description": "Specifies a CORS rule for the Blob service." + }, + "LeaseContainerRequest": { + "properties": { + "action": { + "type": "string", + "enum": [ + "Acquire", + "Renew", + "Change", + "Release", + "Break" + ], + "description": "Specifies the lease action. Can be one of the available actions." + }, + "leaseId": { + "type": "string", + "description": "Identifies the lease. Can be specified in any valid GUID string format." + }, + "breakPeriod": { + "type": "integer", + "description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60." + }, + "leaseDuration": { + "type": "integer", + "description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires." + }, + "proposedLeaseId": { + "type": "string", + "description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format." + } + }, + "required": [ + "action" + ], + "description": "Lease Container request schema." + }, + "LeaseContainerResponse": { + "properties": { + "leaseId": { + "type": "string", + "description": "Returned unique lease ID that must be included with any request to delete the container, or to renew, change, or release the lease." + }, + "leaseTimeSeconds": { + "type": "string", + "description": "Approximate time remaining in the lease period, in seconds." + } + }, + "description": "Lease Container response schema." + } + }, + "parameters": { + "ContainerName": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob container within the specified storage account. Blob container names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ImmutabilityPolicyName": { + "name": "immutabilityPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob container immutabilityPolicy within the specified storage account. ImmutabilityPolicy Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "BlobServicesName": { + "name": "BlobServicesName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob Service within the specified storage account. Blob Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersClearLegalHold.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersClearLegalHold.json new file mode 100644 index 000000000000..b1633261c842 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersClearLegalHold.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4303", + "accountName": "sto7280", + "containerName": "container8723", + "api-version": "2019-06-01", + "monitor": "true", + "LegalHold": { + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + }, + "responses": { + "200": { + "body": { + "hasLegalHold": false, + "tags": [] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDelete.json new file mode 100644 index 000000000000..17ec29c9e53c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4079", + "accountName": "sto4506", + "containerName": "container9689", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDeleteImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDeleteImmutabilityPolicy.json new file mode 100644 index 000000000000..cf08687b3991 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersDeleteImmutabilityPolicy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1581", + "accountName": "sto9621", + "containerName": "container4910", + "immutabilityPolicyName": "default", + "If-Match": "\"8d59f81a7fa7be0\"", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res1581/providers/Microsoft.Storage/storageAccounts/sto9621/blobServices/default/containers/container4910/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f81a87b40c0\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 0, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersExtendImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersExtendImmutabilityPolicy.json new file mode 100644 index 000000000000..547a32199bfd --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersExtendImmutabilityPolicy.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6238", + "accountName": "sto232", + "containerName": "container5023", + "If-Match": "\"8d59f830d0c3bf9\"", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "immutabilityPeriodSinceCreationInDays": 100 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6238/providers/Microsoft.Storage/storageAccounts/sto232/blobServices/default/containers/container5023/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d57a8b2ff50332\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 100, + "state": "Locked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGet.json new file mode 100644 index 000000000000..a064859ce846 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGet.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "containerName": "container1634", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/blobServices/default/containers/container1634", + "name": "container1634", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-26T05:06:14Z", + "immutabilityPolicy": { + "etag": "\"8d592d74cb3011a\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 100, + "state": "Locked" + }, + "updateHistory": [ + { + "update": "put", + "immutabilityPeriodSinceCreationInDays": 3, + "timestamp": "2018-03-26T05:06:11.431403Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "update": "lock", + "immutabilityPeriodSinceCreationInDays": 3, + "timestamp": "2018-03-26T05:06:13.0907641Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "update": "extend", + "immutabilityPeriodSinceCreationInDays": 100, + "timestamp": "2018-03-26T05:06:14.7097716Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + ] + }, + "legalHold": { + "hasLegalHold": true, + "tags": [ + { + "tag": "tag1", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "tag": "tag2", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "tag": "tag3", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + ] + }, + "hasImmutabilityPolicy": true, + "hasLegalHold": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json new file mode 100644 index 000000000000..30ee5585ffb0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res5221", + "accountName": "sto9177", + "containerName": "container3489", + "immutabilityPolicyName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res5221/providers/Microsoft.Storage/storageAccounts/sto9177/blobServices/default/containers/container3489/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f828e64b75c\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 5, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Acquire.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Acquire.json new file mode 100644 index 000000000000..d075be3256c7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Acquire.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "action": "Acquire", + "leaseId": null, + "breakPeriod": null, + "leaseDuration": -1, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Break.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Break.json new file mode 100644 index 000000000000..83a0698b50f5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLease_Break.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "action": "Break", + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d", + "breakPeriod": null, + "leaseDuration": null, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseTimeSeconds": "0" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersList.json new file mode 100644 index 000000000000..2ffb0fdd372a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container1644", + "name": "container1644", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "publicAccess": "Container", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container4052", + "name": "container4052", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers?api-version=2019-06-01&$maxpagesize=2&$skipToken=/sto1590/container5103" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLockImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLockImmutabilityPolicy.json new file mode 100644 index 000000000000..416758d8d807 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersLockImmutabilityPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res2702", + "accountName": "sto5009", + "containerName": "container1631", + "If-Match": "\"8d59f825b721dd3\"", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res2702/providers/Microsoft.Storage/storageAccounts/sto5009/blobServices/default/containers/container1631/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d57a8a5edb084a\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "state": "Locked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPatch.json new file mode 100644 index 000000000000..435a443a580a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPatch.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2019-06-01", + "monitor": "true", + "blobContainer": { + "properties": { + "publicAccess": "Container", + "metadata": { + "metadata": "true" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "metadata": { + "metadata": "true" + }, + "publicAccess": "Container", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPut.json new file mode 100644 index 000000000000..babf146f421a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPut.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2019-06-01", + "monitor": "true", + "blobContainer": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers" + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json new file mode 100644 index 000000000000..45bacfdedad6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1782", + "accountName": "sto7069", + "containerName": "container6397", + "immutabilityPolicyName": "default", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "immutabilityPeriodSinceCreationInDays": 3 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f830cb130e5\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersSetLegalHold.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersSetLegalHold.json new file mode 100644 index 000000000000..756a74ffa5ee --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersSetLegalHold.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4303", + "accountName": "sto7280", + "containerName": "container8723", + "api-version": "2019-06-01", + "monitor": "true", + "LegalHold": { + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + }, + "responses": { + "200": { + "body": { + "hasLegalHold": true, + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json new file mode 100644 index 000000000000..f823f3c9ce2f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json new file mode 100644 index 000000000000..e1e805d22e6e --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json new file mode 100644 index 000000000000..edb6669ab5db --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json @@ -0,0 +1,165 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesGet.json new file mode 100644 index 000000000000..fd1cf9135663 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesList.json new file mode 100644 index 000000000000..4bc733bf0ee5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesPut.json new file mode 100644 index 000000000000..a99a6b58f6cf --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesDelete.json new file mode 100644 index 000000000000..29c8dbb132c4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4079", + "accountName": "sto4506", + "shareName": "share9689", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet.json new file mode 100644 index 000000000000..b428d98cb1cc --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "shareName": "share1634", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/fileServices/default/shares/share1634", + "name": "share1634", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "lastModifiedTime": "2019-05-26T05:06:14Z", + "shareQuota": 1024 + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesList.json new file mode 100644 index 000000000000..ae649fa0a84b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share1644", + "name": "share1644", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares?api-version=2019-06-01&$maxpagesize=2&$skipToken=/sto1590/share5103" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPatch.json new file mode 100644 index 000000000000..c31ea28ec76d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPatch.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2019-06-01", + "monitor": "true", + "fileShare": { + "properties": { + "metadata": { + "type": "image" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "metadata": { + "type": "image" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut.json new file mode 100644 index 000000000000..39fcf90430a8 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2019-06-01", + "monitor": "true", + "fileShare": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares" + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/OperationsList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/OperationsList.json new file mode 100644 index 000000000000..3e7e1e768be7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/OperationsList.json @@ -0,0 +1,473 @@ +{ + "parameters": { + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage/storageAccounts/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Create/Update Storage Account", + "description": "Creates a storage account with the specified parameters or update the properties or tags or adds custom domain for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/delete", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Delete Storage Account", + "description": "Deletes an existing storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listkeys/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List Storage Account Keys", + "description": "Returns the access keys for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/regeneratekey/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Regenerate Storage Account Keys", + "description": "Regenerates the access keys for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/checknameavailability/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Name Availability", + "operation": "Check Name Availability", + "description": "Checks that account name is valid and is not in use." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List/Get Storage Account(s)", + "description": "Returns the list of storage accounts or gets the properties for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/usages/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Usage Metrics", + "operation": "Get Subscription Usages", + "description": "Returns the limit and the current usage count for resources in the specified subscription" + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listAccountSas/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Account SAS Token", + "operation": "Returns Storage Account SAS Token", + "description": "Returns the Account SAS token for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listServiceSas/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Returns the Service SAS token for the specified storage account.", + "operation": "Returns Storage Service SAS Token", + "description": "Storage Service SAS Token" + } + }, + { + "name": "Microsoft.Storage/locations/deleteVirtualNetworkOrSubnets/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Location", + "operation": "Delete virtual network or subnets notifications", + "description": "Notifies Microsoft.Storage that virtual network or subnet is being deleted" + } + }, + { + "name": "Microsoft.Storage/operations/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Operations", + "operation": "Poll Asynchronous Operation", + "description": "Polls the status of an asynchronous operation." + } + }, + { + "name": "Microsoft.Storage/register/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Resource Provider", + "operation": "Registers the Storage Resource Provider", + "description": "Registers the subscription for the storage resource provider and enables the creation of storage accounts." + } + }, + { + "name": "Microsoft.Storage/skus/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Skus", + "operation": "List Skus", + "description": "Lists the Skus supported by Microsoft.Storage." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/services/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Create/Update Diagnostic Settings", + "description": "Create/Update storage account diagnostic settings." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "UsedCapacity", + "displayName": "Used capacity", + "displayDescription": "Account used capacity", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity", + "resourceIdDimensionNameOverride": "AccountResourceId" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BlobCapacity", + "displayName": "Blob Capacity", + "displayDescription": "The amount of storage used by the storage account’s Blob service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "BlobCount", + "displayName": "Blob Count", + "displayDescription": "The number of Blob in the storage account’s Blob service.", + "unit": "Count", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "ContainerCount", + "displayName": "Blob Container Count", + "displayDescription": "The number of containers in the storage account’s Blob service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "BlobProvisionedSize", + "displayName": "Blob Provisioned Size", + "displayDescription": "The amount of storage provisioned in the storage account’s Blob service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "TableCapacity", + "displayName": "Table Capacity", + "displayDescription": "The amount of storage used by the storage account’s Table service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "TableCount", + "displayName": "Table Count", + "displayDescription": "The number of table in the storage account’s Table service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "TableEntityCount", + "displayName": "Table Entity Count", + "displayDescription": "The number of table entities in the storage account’s Table service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "QueueCapacity", + "displayName": "Queue Capacity", + "displayDescription": "The amount of storage used by the storage account’s Queue service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "QueueCount", + "displayName": "Queue Count", + "displayDescription": "The number of queue in the storage account’s Queue service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "QueueMessageCount", + "displayName": "Queue Message Count", + "displayDescription": "The approximate number of queue messages in the storage account’s Queue service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "FileCapacity", + "displayName": "File Capacity", + "displayDescription": "The amount of storage used by the storage account’s File service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileProvisionedSize", + "displayName": "File Provisioned Size", + "displayDescription": "The amount of storage provisioned in the storage account’s File service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileCount", + "displayName": "File Count", + "displayDescription": "The number of file in the storage account’s File service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileShareCount", + "displayName": "File Share Count", + "displayDescription": "The number of file shares in the storage account’s File service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/SKUList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/SKUList.json new file mode 100644 index 000000000000..f45305d2b92a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/SKUList.json @@ -0,0 +1,6454 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "true" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCheckNameAvailability.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCheckNameAvailability.json new file mode 100644 index 000000000000..1099b50cbc6a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCheckNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-06-01", + "accountName": { + "name": "sto3363", + "type": "Microsoft.Storage/storageAccounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json new file mode 100644 index 000000000000..23b513323e97 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2019-06-01", + "parameters": { + "sku": { + "name": "Standard_GRS" + }, + "kind": "Storage", + "location": "eastus2euap", + "properties": { + "isHnsEnabled": true + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "kind": "Storage", + "location": "eastus2euap", + "name": "sto4445", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:25:33.4863236Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": true + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDelete.json new file mode 100644 index 000000000000..ab0321053bae --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteManagementPolicy.json new file mode 100644 index 000000000000..1a2b5ebb0293 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteManagementPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "managementPolicyName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeletePrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..ba3a18432002 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName":"{privateEndpointConnectionName}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountFailover.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountFailover.json new file mode 100644 index 000000000000..6b7ea4b120a6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountFailover.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetManagementPolicy.json new file mode 100644 index 000000000000..91548725271b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetManagementPolicy.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "managementPolicyName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T03:01:55.7168089Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..038fc8cc6131 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters":{ + "subscriptionId":"{subscription-id}", + "resourceGroupName":"res6977", + "accountName":"sto2527", + "privateEndpointConnectionName":"{privateEndpointConnectionName}", + "api-version":"2019-06-01", + "monitor":"true" + }, + "responses":{ + "200":{ + "body":{ + "id":"/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name":"{privateEndpointConnectionName}", + "type":"Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties":{ + "provisioningState":"Succeeded", + "privateEndpoint":{ + "id":"/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState":{ + "status":"Approved", + "description":"Auto-Approved", + "actionRequired":"None" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetProperties.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetProperties.json new file mode 100644 index 000000000000..df0f7b8374c2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetProperties.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json new file mode 100644 index 000000000000..2927913adedf --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json @@ -0,0 +1,183 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res2627/providers/Microsoft.Storage/storageAccounts/sto1125", + "kind": "Storage", + "location": "eastus2euap", + "name": "sto1125", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:28:53.4540398Z", + "primaryEndpoints": { + "web": "https://sto1125.web.core.windows.net/", + "dfs": "https://sto1125.dfs.core.windows.net/", + "blob": "https://sto1125.blob.core.windows.net/", + "file": "https://sto1125.file.core.windows.net/", + "queue": "https://sto1125.queue.core.windows.net/", + "table": "https://sto1125.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto3699", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2euap", + "name": "sto3699", + "properties": { + "creationTime": "2017-05-24T10:06:30.6093014Z", + "primaryEndpoints": { + "blob": "https://sto3699.blob.core.windows.net/", + "file": "https://sto3699.file.core.windows.net/", + "queue": "https://sto3699.queue.core.windows.net/", + "table": "https://sto3699.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto6637", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2euap", + "name": "sto6637", + "properties": { + "creationTime": "2017-05-24T10:09:39.5625175Z", + "primaryEndpoints": { + "blob": "https://sto6637.blob.core.windows.net/", + "file": "https://sto6637.file.core.windows.net/", + "queue": "https://sto6637.queue.core.windows.net/", + "table": "https://sto6637.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res8186/providers/Microsoft.Storage/storageAccounts/sto834", + "kind": "Storage", + "location": "eastus2euap", + "name": "sto834", + "properties": { + "creationTime": "2017-05-24T13:28:20.8686541Z", + "primaryEndpoints": { + "blob": "https://sto834.blob.core.windows.net/", + "file": "https://sto834.file.core.windows.net/", + "queue": "https://sto834.queue.core.windows.net/", + "table": "https://sto834.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto9174", + "identity": { + "principalId": "933e3ddf-1802-4a51-9469-18a33b576f88", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2euap", + "name": "sto9174", + "properties": { + "creationTime": "2017-05-24T09:46:19.6556989Z", + "primaryEndpoints": { + "blob": "https://sto9174.blob.core.windows.net/", + "file": "https://sto9174.file.core.windows.net/", + "queue": "https://sto9174.queue.core.windows.net/", + "table": "https://sto9174.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListAccountSAS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListAccountSAS.json new file mode 100644 index 000000000000..3d4464106df5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListAccountSAS.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7985", + "accountName": "sto8588", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "signedServices": "b", + "signedResourceTypes": "s", + "signedPermission": "r", + "signedProtocol": "https,http", + "signedStart": "2017-05-24T10:42:03.1567373Z", + "signedExpiry": "2017-05-24T11:42:03.1567373Z", + "keyToSign": "key1" + } + }, + "responses": { + "200": { + "body": { + "accountSasToken": "sv=2015-04-05&ss=b&srt=s&sp=r&st=2017-05-24T10%3A42%3A03Z&se=2017-05-24T11%3A42%3A03Z&spr=https,http&sig=Z0I%2BEpM%2BPPlTC8ApfUf%2BcffO2aahMgZim3U0iArqsS0%3D" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json new file mode 100644 index 000000000000..43f968b9788c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6117", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4036", + "kind": "Storage", + "location": "eastus2euap", + "name": "sto4036", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:24:47.818801Z", + "primaryEndpoints": { + "web": "https://sto4036.web.core.windows.net/", + "dfs": "https://sto4036.dfs.core.windows.net/", + "blob": "https://sto4036.blob.core.windows.net/", + "file": "https://sto4036.file.core.windows.net/", + "queue": "https://sto4036.queue.core.windows.net/", + "table": "https://sto4036.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4452", + "kind": "Storage", + "location": "eastus2euap", + "name": "sto4452", + "properties": { + "creationTime": "2017-05-24T13:24:15.7068366Z", + "primaryEndpoints": { + "blob": "https://sto4452.blob.core.windows.net/", + "file": "https://sto4452.file.core.windows.net/", + "queue": "https://sto4452.queue.core.windows.net/", + "table": "https://sto4452.table.core.windows.net/" + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListKeys.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListKeys.json new file mode 100644 index 000000000000..9ca64912415f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListKeys.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res418", + "accountName": "sto2220", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "dNJvKnULO586Ji3nFzB7987TJs4ovnGZhyGXeiVQ75HZGPhBmBfe8lXrI7EfyATff6S5ucxffCoEAQOWbmPK/Q==" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListLocationUsage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListLocationUsage.json new file mode 100644 index 000000000000..bdd66510afcd --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListLocationUsage.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "eastus2(stage)", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 55, + "limit": 250, + "name": { + "value": "StorageAccounts", + "localizedValue": "Storage Accounts" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateLinkResources.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateLinkResources.json new file mode 100644 index 000000000000..fda020777151 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateLinkResources.json @@ -0,0 +1,101 @@ +{ + "parameters":{ + "subscriptionId":"{subscription-id}", + "resourceGroupName":"res6977", + "accountName":"sto2527", + "api-version":"2019-06-01", + "monitor":"true" + }, + "responses":{ + "200":{ + "body":{ + "value":[ + { + "id":"/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/blob", + "name":"blob", + "type":"Microsoft.Storage/storageAccounts/privateLinkResources", + "properties":{ + "groupId":"blob", + "requiredMembers":[ + "blob" + ], + "requiredZoneNames":[ + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id":"/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/blob_secondary", + "name":"blob_secondary", + "type":"Microsoft.Storage/storageAccounts/privateLinkResources", + "properties":{ + "groupId":"blob_secondary", + "requiredMembers":[ + "blob_secondary" + ], + "requiredZoneNames":[ + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id":"/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/table", + "name":"table", + "type":"Microsoft.Storage/storageAccounts/privateLinkResources", + "properties":{ + "groupId":"table", + "requiredMembers":[ + "table" + ], + "requiredZoneNames":[ + "privatelink.table.core.windows.net" + ] + } + }, + { + "id":"/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/table_secondary", + "name":"table_secondary", + "type":"Microsoft.Storage/storageAccounts/privateLinkResources", + "properties":{ + "groupId":"table_secondary", + "requiredMembers":[ + "table_secondary" + ], + "requiredZoneNames":[ + "privatelink.table.core.windows.net" + ] + } + }, + { + "id":"/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/dfs", + "name":"dfs", + "type":"Microsoft.Storage/storageAccounts/privateLinkResources", + "properties":{ + "groupId":"dfs", + "requiredMembers":[ + "dfs" + ], + "requiredZoneNames":[ + "privatelink.dfs.core.windows.net" + ] + } + }, + { + "id":"/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/dfs_secondary", + "name":"dfs_secondary", + "type":"Microsoft.Storage/storageAccounts/privateLinkResources", + "properties":{ + "groupId":"dfs_secondary", + "requiredMembers":[ + "dfs_secondary" + ], + "requiredZoneNames":[ + "privatelink.dfs.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListServiceSAS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListServiceSAS.json new file mode 100644 index 000000000000..7e6b1156a94d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListServiceSAS.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7439", + "accountName": "sto1299", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "canonicalizedResource": "/blob/sto1299/music", + "signedResource": "c", + "signedPermission": "l", + "signedExpiry": "2017-05-24T11:32:48.8457197Z" + } + }, + "responses": { + "200": { + "body": { + "serviceSasToken": "sv=2015-04-05&sr=c&se=2017-05-24T11%3A32%3A48Z&sp=l&sig=PoF8yBUGixsjzwroLmw7vG3VbGz4KB2woZC2D4C2oio%3D" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutPrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutPrivateEndpointConnection.json new file mode 100644 index 000000000000..f07f9454ff04 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters":{ + "subscriptionId":"{subscription-id}", + "resourceGroupName":"res7687", + "accountName":"sto9699", + "privateEndpointConnectionName":"{privateEndpointConnectionName}", + "api-version":"2019-06-01", + "monitor":"true", + "properties":{ + "properties":{ + "privateLinkServiceConnectionState":{ + "status":"Approved", + "description":"Auto-Approved" + } + } + } + }, + "responses":{ + "200":{ + "body":{ + "id":"/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name":"{privateEndpointConnectionName}", + "type":"Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties":{ + "provisioningState":"Succeeded", + "privateEndpoint":{ + "id":"/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState":{ + "status":"Approved", + "description":"Auto-Approved", + "actionRequired":"None" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKey.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKey.json new file mode 100644 index 000000000000..d3e324f3a2f7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKey.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2019-06-01", + "monitor": "true", + "regenerateKey": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "7xl+yQ4MrVpZCHspveCfy4f8jgTY1wv42gHO8k4bAX+EPvN4hY5uPau/bpofgeye+K9FtgvjkadkLISPfOxlMw==" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "uC+kyJ9/gT81E/+9I1Go4xtOe8sW5rdIm3n6PNIyQ5kGO5OpFq69aWnrn3jLeFIyItzpln9P392U0353RYKvbg==" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRevokeUserDelegationKeys.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRevokeUserDelegationKeys.json new file mode 100644 index 000000000000..aeae1e76eef3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRevokeUserDelegationKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2019-06-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json new file mode 100644 index 000000000000..bba4c1218aa0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json new file mode 100644 index 000000000000..9435b6eb1848 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "networkAcls": { + "defaultAction": "Allow" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json new file mode 100644 index 000000000000..8c1500e04729 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json @@ -0,0 +1,604 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices": { + "get": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_List", + "x-ms-examples": { + "ListFileServices": { + "$ref": "./examples/FileServicesList.json" + } + }, + "description": "List all file services in storage accounts", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List file services operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileServiceItems" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}": { + "put": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_SetServiceProperties", + "x-ms-examples": { + "PutFileServices": { + "$ref": "./examples/FileServicesPut.json" + } + }, + "description": "Sets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileServicesName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileServiceProperties" + }, + "description": "The properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s File service successfully.", + "schema": { + "$ref": "#/definitions/FileServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_GetServiceProperties", + "x-ms-examples": { + "GetFileServices": { + "$ref": "./examples/FileServicesGet.json" + } + }, + "description": "Gets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileServicesName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s File service.", + "schema": { + "$ref": "#/definitions/FileServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares": { + "get": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_List", + "x-ms-examples": { + "ListShares": { + "$ref": "./examples/FileSharesList.json" + } + }, + "description": "Lists all shares.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$skipToken", + "in": "query", + "type": "string", + "description": "Optional. Continuation token for the list operation." + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional. Specified maximum number of shares that can be included in the list." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional. When specified, only share names starting with the filter will be listed." + } + ], + "responses": { + "200": { + "description": "OK -- List Shares operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShareItems" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}": { + "put": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Create", + "x-ms-examples": { + "PutShares": { + "$ref": "./examples/FileSharesPut.json" + } + }, + "description": "Creates a new share under the specified account as described by request body. The share resource includes metadata and properties for that share. It does not include a list of the files contained by the share. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "fileShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileShare" + }, + "description": "Properties of the file share to create." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created -- Create Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "200": { + "description": "OK -- The Share is already created.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Update", + "x-ms-examples": { + "UpdateShares": { + "$ref": "./examples/FileSharesPatch.json" + } + }, + "description": "Updates share properties as specified in request body. Properties not mentioned in the request will not be changed. Update fails if the specified share does not already exist. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "fileShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileShare" + }, + "description": "Properties to update for the file share." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Update Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare", + "description": "Properties of the updated file share." + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Get", + "x-ms-examples": { + "GetShares": { + "$ref": "./examples/FileSharesGet.json" + } + }, + "description": "Gets properties of a specified share.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Delete", + "x-ms-examples": { + "DeleteShares": { + "$ref": "./examples/FileSharesDelete.json" + } + }, + "description": "Deletes specified share under its account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete Share operation completed successfully." + }, + "204": { + "description": "No Content -- The Share not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "FileServiceItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FileServiceProperties" + }, + "description": "List of file services returned.", + "readOnly": true + } + } + }, + "FileServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "../../../../../storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the File service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the File service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "FileServiceProperties", + "description": "The properties of File services in storage account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of File services in storage account." + }, + "FileShare": { + "properties": { + "properties": { + "$ref": "#/definitions/FileShareProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "FileShareProperties", + "description": "Properties of the file share." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "Properties of the file share, including Id, resource name, resource type, Etag." + }, + "FileShareItem": { + "properties": { + "properties": { + "$ref": "#/definitions/FileShareProperties", + "x-ms-client-flatten": true, + "description": "The file share properties be listed out." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The file share properties be listed out." + }, + "FileShareItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FileShareItem" + }, + "description": "List of file shares returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of shares. Returned when total number of requested shares exceed maximum page size.", + "readOnly": true + } + }, + "description": "Response schema. Contains list of shares returned, and if paging is requested or required, a URL to next page of shares." + }, + "FileShareProperties": { + "properties": { + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the share was last modified." + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair to associate with the share as metadata." + }, + "shareQuota": { + "type": "integer", + "minimum": 1, + "maximum": 5120, + "description": "The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5TB (5120)." + } + }, + "description": "The properties of the file share." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Storage 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 Storage service." + } + }, + "parameters": { + "FileServicesName": { + "name": "FileServicesName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the file Service within the specified storage account. File Service Name must be \"default\"", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "ShareName": { + "name": "shareName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json new file mode 100644 index 000000000000..f51cd270972c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json @@ -0,0 +1,2789 @@ +{ + "swagger": "2.0", + "info": { + "title": "StorageManagementClient", + "description": "The Azure Storage Management API.", + "version": "2019-06-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Storage/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Storage Rest API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/skus": { + "get": { + "tags": [ + "Skus" + ], + "operationId": "Skus_List", + "description": "Lists the available SKUs supported by Microsoft.Storage for given subscription.", + "x-ms-examples": { + "SkuList": { + "$ref": "./examples/SKUList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage SKUs in the given subscription retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageSkuListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/checkNameAvailability": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_CheckNameAvailability", + "description": "Checks that the storage account name is valid and is not already in use.", + "x-ms-examples": { + "StorageAccountCheckNameAvailability": { + "$ref": "./examples/StorageAccountCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCheckNameAvailabilityParameters" + }, + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the storage account name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}": { + "put": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Create", + "description": "Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.", + "x-ms-examples": { + "StorageAccountCreate": { + "$ref": "./examples/StorageAccountCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to provide for the created account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned when the storage account was already created from a previous request with the same properties specified in the request body.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Delete", + "description": "Deletes a storage account in Microsoft Azure.", + "x-ms-examples": { + "StorageAccountDelete": { + "$ref": "./examples/StorageAccountDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- storage account deleted successfully." + }, + "204": { + "description": "NoContent -- account does not exist in the subscription." + } + } + }, + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_GetProperties", + "description": "Returns the properties for the specified storage account including but not limited to name, SKU name, location, and account status. The ListKeys operation should be used to retrieve storage keys.", + "x-ms-examples": { + "StorageAccountGetProperties": { + "$ref": "./examples/StorageAccountGetProperties.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within account's properties. By default, data is not included when fetching properties. Currently we only support geoReplicationStats.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "geoReplicationStats" + ], + "x-ms-enum": { + "name": "StorageAccountExpand", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "OK -- properties retrieved successfully for the storage account.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + } + } + }, + "patch": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Update", + "description": "The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.", + "x-ms-examples": { + "StorageAccountUpdate": { + "$ref": "./examples/StorageAccountUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to provide for the updated account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- storage account properties updated successfully.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_List", + "description": "Lists all the storage accounts available under the subscription. Note that storage keys are not returned; use the ListKeys operation for this.", + "x-ms-examples": { + "StorageAccountList": { + "$ref": "./examples/StorageAccountList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage accounts was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListByResourceGroup", + "description": "Lists all the storage accounts available under the given resource group. Note that storage keys are not returned; use the ListKeys operation for this.", + "x-ms-examples": { + "StorageAccountListByResourceGroup": { + "$ref": "./examples/StorageAccountListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage accounts in the given resource group retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListKeys", + "description": "Lists the access keys for the specified storage account.", + "x-ms-examples": { + "StorageAccountListKeys": { + "$ref": "./examples/StorageAccountListKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- list of keys retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RegenerateKey", + "description": "Regenerates one of the access keys for the specified storage account.", + "x-ms-examples": { + "StorageAccountRegenerateKey": { + "$ref": "./examples/StorageAccountRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "regenerateKey", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerateKeyParameters" + }, + "description": "Specifies name of the key which should be regenerated -- key1 or key2." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- specified key regenerated successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/usages": { + "get": { + "tags": [ + "LocationUsage" + ], + "operationId": "Usages_ListByLocation", + "description": "Gets the current usage count and the limit for the resources of the location under the subscription.", + "x-ms-examples": { + "UsageList": { + "$ref": "./examples/StorageAccountListLocationUsage.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the Azure Storage resource." + } + ], + "responses": { + "200": { + "description": "OK -- current usage count and limit retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListAccountSas": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListAccountSAS", + "description": "List SAS credentials of a storage account.", + "x-ms-examples": { + "StorageAccountListAccountSAS": { + "$ref": "./examples/StorageAccountListAccountSAS.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccountSasParameters" + }, + "description": "The parameters to provide to list SAS credentials for the storage account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the account SAS created for the storage account requested.", + "schema": { + "$ref": "#/definitions/ListAccountSasResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListServiceSas": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListServiceSAS", + "description": "List service SAS credentials of a specific resource.", + "x-ms-examples": { + "StorageAccountListServiceSAS": { + "$ref": "./examples/StorageAccountListServiceSAS.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceSasParameters" + }, + "description": "The parameters to provide to list service SAS credentials." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the service SAS created for the storage service requested.", + "schema": { + "$ref": "#/definitions/ListServiceSasResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/failover": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Failover", + "description": "Failover request can be triggered for a storage account in case of availability issues. The failover occurs from the storage account's primary cluster to secondary cluster for RA-GRS accounts. The secondary cluster will become primary after failover.", + "x-ms-examples": { + "StorageAccountCreate": { + "$ref": "./examples/StorageAccountFailover.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the storage account failover is completed, and the secondary cluster has become primary." + }, + "202": { + "description": "Accepted -- Failover request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}": { + "get": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_Get", + "description": "Gets the managementpolicy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetManagementPolicies": { + "$ref": "./examples/StorageAccountGetManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the managementpolicy successfully.", + "schema": { + "$ref": "#/definitions/ManagementPolicy" + } + } + } + }, + "put": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_CreateOrUpdate", + "description": "Sets the managementpolicy to the specified storage account.", + "x-ms-examples": { + "StorageAccountSetManagementPolicies": { + "$ref": "./examples/StorageAccountSetManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagementPolicy" + }, + "description": "The ManagementPolicy set to a storage account." + } + ], + "responses": { + "200": { + "description": "OK -- Put managementpolicy successfully.", + "schema": { + "$ref": "#/definitions/ManagementPolicy" + } + } + } + }, + "delete": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_Delete", + "description": "Deletes the managementpolicy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteManagementPolicies": { + "$ref": "./examples/StorageAccountDeleteManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the managementpolicy successfully." + }, + "204": { + "description": "No Content -- The managementpolicy does not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountGetPrivateEndpointConnection": { + "$ref": "./examples/StorageAccountGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountPutPrivateEndpointConnection": { + "$ref": "./examples/StorageAccountPutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountDeletePrivateEndpointConnection": { + "$ref": "./examples/StorageAccountDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByStorageAccount", + "description": "Gets the private link resources that need to be created for a storage account.", + "x-ms-examples": { + "StorageAccountListPrivateLinkResources": { + "$ref": "./examples/StorageAccountListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/revokeUserDelegationKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RevokeUserDelegationKeys", + "description": "Revoke user delegation keys.", + "x-ms-examples": { + "StorageAccountRevokeUserDelegationKeys": { + "$ref": "./examples/StorageAccountRevokeUserDelegationKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3 + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- revoke user delegation keys succeeded." + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Storage 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 Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Storage 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 Storage.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true, + "x-ms-client-name": "OperationProperties", + "$ref": "#/definitions/OperationProperties" + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "StorageAccountCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The storage account name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Storage/storageAccounts" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Storage/storageAccounts" + } + }, + "required": [ + "name", + "type" + ], + "description": "The parameters used to check the availability of the storage account name." + }, + "SKUCapability": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of capability, The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "value": { + "readOnly": true, + "type": "string", + "description": "A string value to indicate states of given capability. Possibly 'true' or 'false'." + } + }, + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction. As of now this can be \"QuotaId\" or \"NotAvailableForSubscription\". Quota Id is set when the SKU has requiredQuotas parameter as the subscription does not belong to that quota. The \"NotAvailableForSubscription\" is related to capacity at DC." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "StorageSkuListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Sku" + }, + "description": "Get the list result of storage SKUs and their properties." + } + }, + "description": "The response from the List Storage SKUs operation." + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "readOnly": true, + "type": "boolean", + "description": "Gets a boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used." + }, + "reason": { + "readOnly": true, + "type": "string", + "description": "Gets the reason that a storage account name could not be used. The Reason element is only returned if NameAvailable is false.", + "enum": [ + "AccountNameInvalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false + } + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Gets an error message explaining the Reason value in more detail." + } + }, + "description": "The CheckNameAvailability operation response." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS", + "Premium_ZRS", + "Standard_GZRS", + "Standard_RAGZRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Gets the SKU tier. This is based on the SKU name.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": false + } + }, + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of the resource, usually it is 'storageAccounts'." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Indicates the type of storage account.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "capabilities": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + }, + "required": [ + "name" + ], + "description": "The SKU of the storage account." + }, + "CustomDomain": { + "properties": { + "name": { + "type": "string", + "description": "Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source." + }, + "useSubDomainName": { + "type": "boolean", + "description": "Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates." + } + }, + "required": [ + "name" + ], + "description": "The custom domain assigned to this storage account. This can be set via Update." + }, + "EncryptionService": { + "properties": { + "enabled": { + "type": "boolean", + "description": "A boolean indicating whether or not the service encrypts the data as it is stored." + }, + "lastEnabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets a rough estimate of the date/time when the encryption was last enabled by the user. Only returned when encryption is enabled. There might be some unencrypted blobs which were written after this time, as it is just a rough estimate." + } + }, + "description": "A service that allows server-side encryption to be used." + }, + "EncryptionServices": { + "properties": { + "blob": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the blob storage service." + }, + "file": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the file storage service." + }, + "table": { + "$ref": "#/definitions/EncryptionService", + "readOnly": true, + "description": "The encryption function of the table storage service." + }, + "queue": { + "$ref": "#/definitions/EncryptionService", + "readOnly": true, + "description": "The encryption function of the queue storage service." + } + }, + "description": "A list of services that support encryption." + }, + "KeyVaultProperties": { + "description": "Properties of key vault.", + "properties": { + "keyname": { + "type": "string", + "description": "The name of KeyVault key.", + "x-ms-client-name": "KeyName" + }, + "keyversion": { + "type": "string", + "description": "The version of KeyVault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyvaulturi": { + "type": "string", + "description": "The Uri of KeyVault.", + "x-ms-client-name": "KeyVaultUri" + } + } + }, + "Encryption": { + "properties": { + "services": { + "$ref": "#/definitions/EncryptionServices", + "description": "List of services which support encryption." + }, + "keySource": { + "type": "string", + "description": "The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Storage, Microsoft.Keyvault", + "enum": [ + "Microsoft.Storage", + "Microsoft.Keyvault" + ], + "x-ms-enum": { + "name": "KeySource", + "modelAsString": true + }, + "default": "Microsoft.Storage" + }, + "keyvaultproperties": { + "$ref": "#/definitions/KeyVaultProperties", + "x-ms-client-name": "KeyVaultProperties", + "description": "Properties provided by key vault." + } + }, + "required": [ + "keySource" + ], + "description": "The encryption settings on the storage account." + }, + "VirtualNetworkRule": { + "properties": { + "id": { + "type": "string", + "x-ms-client-name": "VirtualNetworkResourceId", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}." + }, + "action": { + "type": "string", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "Action", + "modelAsString": false + }, + "default": "Allow", + "description": "The action of virtual network rule." + }, + "state": { + "type": "string", + "enum": [ + "provisioning", + "deprovisioning", + "succeeded", + "failed", + "networkSourceDeleted" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": false + }, + "description": "Gets the state of virtual network rule." + } + }, + "required": [ + "id" + ], + "description": "Virtual Network rule." + }, + "IPRule": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed." + }, + "action": { + "type": "string", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "Action", + "modelAsString": false + }, + "default": "Allow", + "description": "The action of IP ACL rule." + } + }, + "required": [ + "value" + ], + "description": "IP rule with specific IP or IP range in CIDR format." + }, + "NetworkRuleSet": { + "properties": { + "bypass": { + "type": "string", + "enum": [ + "None", + "Logging", + "Metrics", + "AzureServices" + ], + "x-ms-enum": { + "name": "Bypass", + "modelAsString": true + }, + "x-ms-client-name": "Bypass", + "default": "AzureServices", + "description": "Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, \"Logging, Metrics\"), or None to bypass none of those traffics." + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "description": "Virtual Network rule.", + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "Sets the virtual network rules" + }, + "ipRules": { + "type": "array", + "items": { + "description": "IP rule with specific IP or IP range in CIDR format.", + "$ref": "#/definitions/IPRule" + }, + "description": "Sets the IP ACL rules" + }, + "defaultAction": { + "type": "string", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": false + }, + "default": "Allow", + "description": "Specifies the default action of allow or deny when no other rules match." + } + }, + "required": [ + "defaultAction" + ], + "description": "Network rule set" + }, + "AzureFilesIdentityBasedAuthentication": { + "properties": { + "directoryServiceOptions": { + "type": "string", + "description": "Indicates the directory service used.", + "enum": [ + "None", + "AADDS" + ], + "x-ms-enum": { + "name": "DirectoryServiceOptions", + "modelAsString": true + } + } + }, + "required": [ + "directoryServiceOptions" + ], + "description": "Settings for Azure Files identity based authentication." + }, + "StorageAccountPropertiesCreateParameters": { + "properties": { + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "description": "User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Not applicable. Azure Storage encryption is enabled for all storage accounts and cannot be disabled." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "x-ms-client-name": "NetworkRuleSet", + "description": "Network rule set" + }, + "accessTier": { + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true. The default value is true since API version 2019-04-01." + }, + "isHnsEnabled": { + "type": "boolean", + "x-ms-client-name": "IsHnsEnabled", + "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + } + }, + "description": "The parameters used to create the storage account." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "StorageAccountCreateParameters": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "Required. Gets or sets the SKU name." + }, + "kind": { + "type": "string", + "description": "Required. Indicates the type of storage account.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "location": { + "type": "string", + "description": "Required. Gets or sets the location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo region is specified on update, the request will succeed." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used for viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key with a length no greater than 128 characters and a value with a length no greater than 256 characters." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountPropertiesCreateParameters", + "description": "The parameters used to create the storage account." + } + }, + "required": [ + "sku", + "kind", + "location" + ], + "description": "The parameters used when creating a storage account." + }, + "Endpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "queue": { + "readOnly": true, + "type": "string", + "description": "Gets the queue endpoint." + }, + "table": { + "readOnly": true, + "type": "string", + "description": "Gets the table endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object." + }, + "GeoReplicationStats": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the secondary location. Possible values are: - Live: Indicates that the secondary location is active and operational. - Bootstrap: Indicates initial synchronization from the primary location to the secondary location is in progress.This typically occurs when replication is first enabled. - Unavailable: Indicates that the secondary location is temporarily unavailable.", + "enum": [ + "Live", + "Bootstrap", + "Unavailable" + ], + "x-ms-enum": { + "name": "GeoReplicationStatus", + "modelAsString": true + } + }, + "lastSyncTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "All primary writes preceding this UTC date/time value are guaranteed to be available for read operations. Primary writes following this point in time may or may not be available for reads. Element may be default value if value of LastSyncTime is not available, this can happen if secondary is offline or we are in bootstrap." + }, + "canFailover": { + "readOnly": true, + "type": "boolean", + "description": "A boolean flag which indicates whether or not account failover is supported for the account." + } + }, + "description": "Statistics related to replication for storage account's Blob, Table, Queue and File services. It is only available when geo-redundant replication is enabled for the storage account." + }, + "StorageAccountProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Gets the status of the storage account at the time the operation was called.", + "enum": [ + "Creating", + "ResolvingDNS", + "Succeeded" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "primaryEndpoints": { + "$ref": "#/definitions/Endpoints", + "readOnly": true, + "description": "Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object. Note that Standard_ZRS and Premium_LRS accounts only return the blob endpoint." + }, + "primaryLocation": { + "readOnly": true, + "type": "string", + "description": "Gets the location of the primary data center for the storage account." + }, + "statusOfPrimary": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the primary location of the storage account is available or unavailable.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": false + } + }, + "lastGeoFailoverTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the timestamp of the most recent instance of a failover to the secondary location. Only the most recent timestamp is retained. This element is not returned if there has never been a failover instance. Only available if the accountType is Standard_GRS or Standard_RAGRS." + }, + "secondaryLocation": { + "readOnly": true, + "type": "string", + "description": "Gets the location of the geo-replicated secondary for the storage account. Only available if the accountType is Standard_GRS or Standard_RAGRS." + }, + "statusOfSecondary": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the secondary location of the storage account is available or unavailable. Only available if the SKU name is Standard_GRS or Standard_RAGRS.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": false + } + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the creation date and time of the storage account in UTC." + }, + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "readOnly": true, + "description": "Gets the custom domain the user assigned to this storage account." + }, + "secondaryEndpoints": { + "$ref": "#/definitions/Endpoints", + "readOnly": true, + "description": "Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object from the secondary location of the storage account. Only available if the SKU name is Standard_RAGRS." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "readOnly": true, + "description": "Gets the encryption settings on the account. If unspecified, the account is unencrypted." + }, + "accessTier": { + "readOnly": true, + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "x-ms-client-name": "NetworkRuleSet", + "description": "Network rule set", + "readOnly": true + }, + "isHnsEnabled": { + "type": "boolean", + "x-ms-client-name": "IsHnsEnabled", + "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "geoReplicationStats": { + "$ref": "#/definitions/GeoReplicationStats", + "x-ms-client-name": "GeoReplicationStats", + "description": "Geo Replication Stats", + "readOnly": true + }, + "failoverInProgress": { + "type": "boolean", + "x-ms-client-name": "FailoverInProgress", + "description": "If the failover is in progress, the value will be true, otherwise, it will be null.", + "readOnly": true + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "List of private endpoint connection associated with the specified storage account" + } + }, + "description": "Properties of the storage account." + }, + "StorageAccount": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "Gets the SKU." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Gets the Kind.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountProperties", + "description": "Properties of the storage account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The storage account." + }, + "StorageAccountKey": { + "properties": { + "keyName": { + "readOnly": true, + "type": "string", + "description": "Name of the key." + }, + "value": { + "readOnly": true, + "type": "string", + "description": "Base 64-encoded value of the key." + }, + "permissions": { + "readOnly": true, + "type": "string", + "description": "Permissions for the key -- read-only or full permissions.", + "enum": [ + "Read", + "Full" + ], + "x-ms-enum": { + "name": "KeyPermission", + "modelAsString": false + } + } + }, + "description": "An access key for the storage account." + }, + "StorageAccountListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "Gets the list of storage accounts and their properties." + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of storage accounts. Returned when total number of requested storage accounts exceed maximum page size.", + "readOnly": true + } + }, + "description": "The response from the List Storage Accounts operation." + }, + "StorageAccountListKeysResult": { + "properties": { + "keys": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountKey" + }, + "description": "Gets the list of storage account keys and their properties for the specified storage account." + } + }, + "description": "The response from the ListKeys operation." + }, + "StorageAccountRegenerateKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." + } + }, + "required": [ + "keyName" + ], + "description": "The parameters used to regenerate the storage account key." + }, + "StorageAccountPropertiesUpdateParameters": { + "properties": { + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "description": "Custom domain assigned to the storage account by the user. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Provides the encryption settings on the account. The default setting is unencrypted." + }, + "accessTier": { + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true." + }, + "networkAcls": { + "description": "Network rule set", + "x-ms-client-name": "NetworkRuleSet", + "$ref": "#/definitions/NetworkRuleSet" + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + } + }, + "description": "The parameters used when updating a storage account." + }, + "StorageAccountUpdateParameters": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "Gets or sets the SKU name. Note that the SKU name cannot be updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of those SKU names be updated to any other value." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountPropertiesUpdateParameters", + "description": "The parameters used when updating a storage account." + }, + "kind": { + "type": "string", + "description": "Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "description": "The parameters that can be provided when updating the storage account properties." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "Gets a string describing the resource name." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "Gets a localized string describing the resource name." + } + }, + "description": "The usage names that can be used; currently limited to StorageAccount." + }, + "Usage": { + "properties": { + "unit": { + "readOnly": true, + "type": "string", + "description": "Gets the unit of measurement.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountsPerSecond", + "BytesPerSecond" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Gets the current count of the allocated resources in the subscription." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Gets the maximum count of the resources that can be allocated in the subscription." + }, + "name": { + "$ref": "#/definitions/UsageName", + "readOnly": true, + "description": "Gets the name of the type of usage." + } + }, + "description": "Describes Storage Resource Usage." + }, + "UsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "Gets or sets the list of Storage Resource Usages." + } + }, + "description": "The response from the List Usages operation." + }, + "AccountSasParameters": { + "properties": { + "signedServices": { + "type": "string", + "enum": [ + "b", + "q", + "t", + "f" + ], + "x-ms-enum": { + "name": "Services", + "modelAsString": true + }, + "x-ms-client-name": "Services", + "description": "The signed services accessible with the account SAS. Possible values include: Blob (b), Queue (q), Table (t), File (f)." + }, + "signedResourceTypes": { + "type": "string", + "enum": [ + "s", + "c", + "o" + ], + "x-ms-enum": { + "name": "SignedResourceTypes", + "modelAsString": true + }, + "x-ms-client-name": "ResourceTypes", + "description": "The signed resource types that are accessible with the account SAS. Service (s): Access to service-level APIs; Container (c): Access to container-level APIs; Object (o): Access to object-level APIs for blobs, queue messages, table entities, and files." + }, + "signedPermission": { + "type": "string", + "enum": [ + "r", + "d", + "w", + "l", + "a", + "c", + "u", + "p" + ], + "x-ms-enum": { + "name": "Permissions", + "modelAsString": true + }, + "x-ms-client-name": "Permissions", + "description": "The signed permissions for the account SAS. Possible values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create (c), Update (u) and Process (p)." + }, + "signedIp": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "An IP address or a range of IP addresses from which to accept requests." + }, + "signedProtocol": { + "type": "string", + "enum": [ + "https,http", + "https" + ], + "x-ms-enum": { + "name": "HttpProtocol", + "modelAsString": false + }, + "x-ms-client-name": "Protocols", + "description": "The protocol permitted for a request made with the account SAS." + }, + "signedStart": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessStartTime", + "description": "The time at which the SAS becomes valid." + }, + "signedExpiry": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessExpiryTime", + "description": "The time at which the shared access signature becomes invalid." + }, + "keyToSign": { + "type": "string", + "description": "The key to sign the account SAS token with." + } + }, + "required": [ + "signedServices", + "signedResourceTypes", + "signedPermission", + "signedExpiry" + ], + "description": "The parameters to list SAS credentials of a storage account." + }, + "ListAccountSasResponse": { + "properties": { + "accountSasToken": { + "readOnly": true, + "type": "string", + "description": "List SAS credentials of storage account." + } + }, + "description": "The List SAS credentials operation response." + }, + "ServiceSasParameters": { + "properties": { + "canonicalizedResource": { + "type": "string", + "description": "The canonical path to the signed resource." + }, + "signedResource": { + "type": "string", + "enum": [ + "b", + "c", + "f", + "s" + ], + "x-ms-enum": { + "name": "signedResource", + "modelAsString": true + }, + "x-ms-client-name": "Resource", + "description": "The signed services accessible with the service SAS. Possible values include: Blob (b), Container (c), File (f), Share (s)." + }, + "signedPermission": { + "type": "string", + "enum": [ + "r", + "d", + "w", + "l", + "a", + "c", + "u", + "p" + ], + "x-ms-enum": { + "name": "Permissions", + "modelAsString": true + }, + "x-ms-client-name": "Permissions", + "description": "The signed permissions for the service SAS. Possible values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create (c), Update (u) and Process (p)." + }, + "signedIp": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "An IP address or a range of IP addresses from which to accept requests." + }, + "signedProtocol": { + "type": "string", + "enum": [ + "https,http", + "https" + ], + "x-ms-enum": { + "name": "HttpProtocol", + "modelAsString": false + }, + "x-ms-client-name": "Protocols", + "description": "The protocol permitted for a request made with the account SAS." + }, + "signedStart": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessStartTime", + "description": "The time at which the SAS becomes valid." + }, + "signedExpiry": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessExpiryTime", + "description": "The time at which the shared access signature becomes invalid." + }, + "signedIdentifier": { + "type": "string", + "maxLength": 64, + "x-ms-client-name": "Identifier", + "description": "A unique value up to 64 characters in length that correlates to an access policy specified for the container, queue, or table." + }, + "startPk": { + "type": "string", + "x-ms-client-name": "PartitionKeyStart", + "description": "The start of partition key." + }, + "endPk": { + "type": "string", + "x-ms-client-name": "PartitionKeyEnd", + "description": "The end of partition key." + }, + "startRk": { + "type": "string", + "x-ms-client-name": "RowKeyStart", + "description": "The start of row key." + }, + "endRk": { + "type": "string", + "x-ms-client-name": "RowKeyEnd", + "description": "The end of row key." + }, + "keyToSign": { + "type": "string", + "description": "The key to sign the account SAS token with." + }, + "rscc": { + "type": "string", + "x-ms-client-name": "CacheControl", + "description": "The response header override for cache control." + }, + "rscd": { + "type": "string", + "x-ms-client-name": "ContentDisposition", + "description": "The response header override for content disposition." + }, + "rsce": { + "type": "string", + "x-ms-client-name": "ContentEncoding", + "description": "The response header override for content encoding." + }, + "rscl": { + "type": "string", + "x-ms-client-name": "ContentLanguage", + "description": "The response header override for content language." + }, + "rsct": { + "type": "string", + "x-ms-client-name": "ContentType", + "description": "The response header override for content type." + } + }, + "required": [ + "canonicalizedResource" + ], + "description": "The parameters to list service SAS credentials of a specific resource." + }, + "ListServiceSasResponse": { + "properties": { + "serviceSasToken": { + "readOnly": true, + "type": "string", + "description": "List service SAS credentials of specific resource." + } + }, + "description": "The List service SAS credentials operation response." + }, + "ManagementPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ManagementPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Data Policies Rules." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Get Storage Account ManagementPolicies operation response." + }, + "ManagementPolicyProperties": { + "properties": { + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Returns the date and time the ManagementPolicies was last modified." + }, + "policy": { + "$ref": "#/definitions/ManagementPolicySchema", + "description": "The Storage Account ManagementPolicy, in JSON format. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + } + }, + "required": [ + "policy" + ], + "description": "The Storage Account ManagementPolicy properties." + }, + "ManagementPolicySchema": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagementPolicyRule" + }, + "description": "The Storage Account ManagementPolicies Rules. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + } + }, + "required": [ + "rules" + ], + "description": "The Storage Account ManagementPolicies Rules. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + }, + "ManagementPolicyRule": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Rule is enabled if set to true." + }, + "name": { + "type": "string", + "description": "A rule name can contain any combination of alpha numeric characters. Rule name is case-sensitive. It must be unique within a policy." + }, + "type": { + "type": "string", + "description": "The valid value is Lifecycle", + "enum": [ + "Lifecycle" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true + } + }, + "definition": { + "$ref": "#/definitions/ManagementPolicyDefinition", + "description": "An object that defines the Lifecycle rule." + } + }, + "required": [ + "name", + "type", + "definition" + ], + "description": "An object that wraps the Lifecycle rule. Each rule is uniquely defined by name." + }, + "ManagementPolicyDefinition": { + "properties": { + "actions": { + "$ref": "#/definitions/ManagementPolicyAction", + "description": "An object that defines the action set." + }, + "filters": { + "$ref": "#/definitions/ManagementPolicyFilter", + "description": "An object that defines the filter set." + } + }, + "required": [ + "actions" + ], + "description": "An object that defines the Lifecycle rule. Each definition is made up with a filters set and an actions set." + }, + "ManagementPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of strings for prefixes to be match." + }, + "blobTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined enum values. Only blockBlob is supported." + } + }, + "required": [ + "blobTypes" + ], + "description": "Filters limit rule actions to a subset of blobs within the storage account. If multiple filters are defined, a logical AND is performed on all filters. " + }, + "ManagementPolicyAction": { + "properties": { + "baseBlob": { + "$ref": "#/definitions/ManagementPolicyBaseBlob", + "description": "The management policy action for base blob" + }, + "snapshot": { + "$ref": "#/definitions/ManagementPolicySnapShot", + "description": "The management policy action for snapshot" + } + }, + "description": "Actions are applied to the filtered blobs when the execution condition is met." + }, + "ManagementPolicyBaseBlob": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to tier blobs to cool storage. Support blobs currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to tier blobs to archive storage. Support blobs currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to delete the blob" + } + }, + "description": "Management policy action for base blob." + }, + "ManagementPolicySnapShot": { + "properties": { + "delete": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to delete the blob snapshot" + } + }, + "description": "Management policy action for snapshot." + }, + "DateAfterModification": { + "properties": { + "daysAfterModificationGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after last modification" + } + }, + "required": [ + "daysAfterModificationGreaterThan" + ], + "description": "Object to define the number of days after last modification." + }, + "DateAfterCreation": { + "properties": { + "daysAfterCreationGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after creation" + } + }, + "required": [ + "daysAfterCreationGreaterThan" + ], + "description": "Object to define the number of days after creation." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "ErrorResponse": { + "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." + } + }, + "description": "An error response from the storage resource provider." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "StorageAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ManagementPolicyName": { + "name": "managementPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Storage Account Management Policy. It should always be 'default'", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagementPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Storage Account", + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/readme.md b/specification/storage/resource-manager/readme.md index a5124d295d79..544d08170957 100644 --- a/specification/storage/resource-manager/readme.md +++ b/specification/storage/resource-manager/readme.md @@ -26,7 +26,32 @@ These are the global settings for the Storage API. ``` yaml openapi-type: arm -tag: package-2019-04 +tag: package-2019-06 +``` + +### Tag: package-2019-06 + +These settings apply only when `--tag=package-2019-06` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06' +input-file: +- Microsoft.Storage/stable/2019-06-01/storage.json +- Microsoft.Storage/stable/2019-06-01/blob.json +- Microsoft.Storage/stable/2019-06-01/file.json + +directive: + - suppress: R3018 + reason: Existing boolean properties + approved-by: "@fearthecowboy" + + - where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey"].post.operationId + suppress: R1003 + reason: APIs return array of values, is not actually a 'list' operation + approved-by: "@fearthecowboy" + ``` ### Tag: package-2019-04 From bc811bd82b31657bfb7ba49bce27da8cf3d13fbc Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 18 Oct 2019 02:53:10 +0000 Subject: [PATCH 19/54] regenerated all-api-versions --- specification/storage/resource-manager/readme.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/specification/storage/resource-manager/readme.md b/specification/storage/resource-manager/readme.md index 544d08170957..a13e1dafd348 100644 --- a/specification/storage/resource-manager/readme.md +++ b/specification/storage/resource-manager/readme.md @@ -294,6 +294,9 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Storage/stable/2019-06-01/storage.json + - $(this-folder)/Microsoft.Storage/stable/2019-06-01/blob.json + - $(this-folder)/Microsoft.Storage/stable/2019-06-01/file.json - $(this-folder)/Microsoft.Storage/stable/2019-04-01/storage.json - $(this-folder)/Microsoft.Storage/stable/2019-04-01/blob.json - $(this-folder)/Microsoft.Storage/stable/2019-04-01/file.json From 3fcde8b875e4c70f4e5e110d00fbe22c57ac3b96 Mon Sep 17 00:00:00 2001 From: Mathew Charles Date: Thu, 17 Oct 2019 21:24:32 -0700 Subject: [PATCH 20/54] Updating Functions ARM API specs (#7174) --- custom-words.txt | 1 + .../stable/2018-02-01/WebApps.json | 5450 ++++++++++------- 2 files changed, 3191 insertions(+), 2260 deletions(-) diff --git a/custom-words.txt b/custom-words.txt index 0fc88446917e..8a490cd0e369 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -756,6 +756,7 @@ listsas listsecrets LISTSTATUS listsyncfunctiontriggerstatus +listsyncstatus liveevent liveoutput loadbalancer diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json index f9b436eef1bc..ca580ebea02f 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json @@ -2999,7 +2999,7 @@ } }, "404": { - "description": "Function with an name of {functionName} is not running." + "description": "Function with a name of {functionName} does not exist." } } }, @@ -3102,14 +3102,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/keys/{keyName}": { + "put": { "tags": [ "WebApps" ], - "summary": "Get function secrets for a function in a web site, or a deployment slot.", - "description": "Get function secrets for a function in a web site, or a deployment slot.", - "operationId": "WebApps_ListFunctionSecrets", + "summary": "Add or update a function secret.", + "description": "Add or update a function secret.", + "operationId": "WebApps_CreateOrUpdateFunctionSecret", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3124,10 +3124,26 @@ { "name": "functionName", "in": "path", - "description": "Function name.", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", "required": true, "type": "string" }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -3136,10 +3152,16 @@ } ], "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, "200": { - "description": "Function secrets returned.", + "description": "Key was updated.", "schema": { - "$ref": "#/definitions/FunctionSecrets" + "$ref": "#/definitions/KeyInfo" } }, "default": { @@ -3149,16 +3171,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Get hostname bindings for an app or a deployment slot.", - "description": "Get hostname bindings for an app or a deployment slot.", - "operationId": "WebApps_ListHostNameBindings", + "summary": "Delete a function secret.", + "description": "Delete a function secret.", + "operationId": "WebApps_DeleteFunctionSecret", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3166,7 +3186,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", "required": true, "type": "string" }, @@ -3178,32 +3212,23 @@ } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/HostNameBindingCollection" - } + "404": { + "description": "Key was not found." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "Key was deleted." } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listkeys": { + "post": { "tags": [ "WebApps" ], - "summary": "Get the named hostname binding for an app (or deployment slot, if specified).", - "description": "Get the named hostname binding for an app (or deployment slot, if specified).", - "operationId": "WebApps_GetHostNameBinding", + "summary": "Get function keys for a function in a web site, or a deployment slot.", + "description": "Get function keys for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionKeys", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3211,14 +3236,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "hostName", + "name": "functionName", "in": "path", - "description": "Hostname in the hostname binding.", + "description": "Function name.", "required": true, "type": "string" }, @@ -3231,9 +3256,9 @@ ], "responses": { "200": { - "description": "OK", + "description": "Function keys returned.", "schema": { - "$ref": "#/definitions/HostNameBinding" + "$ref": "#/definitions/StringDictionary" } }, "default": { @@ -3243,14 +3268,16 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { + "post": { "tags": [ "WebApps" ], - "summary": "Creates a hostname binding for an app.", - "description": "Creates a hostname binding for an app.", - "operationId": "WebApps_CreateOrUpdateHostNameBinding", + "summary": "Get function secrets for a function in a web site, or a deployment slot.", + "description": "Get function secrets for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionSecrets", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3258,26 +3285,17 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "hostName", + "name": "functionName", "in": "path", - "description": "Hostname in the hostname binding.", + "description": "Function name.", "required": true, "type": "string" }, - { - "name": "hostNameBinding", - "in": "body", - "description": "Binding details. This is the JSON representation of a HostNameBinding object.", - "required": true, - "schema": { - "$ref": "#/definitions/HostNameBinding" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -3287,9 +3305,9 @@ ], "responses": { "200": { - "description": "OK", + "description": "Function secrets returned.", "schema": { - "$ref": "#/definitions/HostNameBinding" + "$ref": "#/definitions/FunctionSecrets" } }, "default": { @@ -3299,14 +3317,16 @@ } } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/listkeys": { + "post": { "tags": [ "WebApps" ], - "summary": "Deletes a hostname binding for an app.", - "description": "Deletes a hostname binding for an app.", - "operationId": "WebApps_DeleteHostNameBinding", + "summary": "Get host secrets for a function app.", + "description": "Get host secrets for a function app.", + "operationId": "WebApps_ListHostKeys", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3314,14 +3334,7 @@ { "name": "name", "in": "path", - "description": "Name of the app.", - "required": true, - "type": "string" - }, - { - "name": "hostName", - "in": "path", - "description": "Hostname in the hostname binding.", + "description": "Site name.", "required": true, "type": "string" }, @@ -3334,22 +3347,28 @@ ], "responses": { "200": { - "description": "Successfully deleted hostname binding." + "description": "Host secrets returned.", + "schema": { + "$ref": "#/definitions/HostKeys" + } }, - "204": { - "description": "Hostname binding does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/listsyncstatus": { + "post": { "tags": [ "WebApps" ], - "summary": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", - "description": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", - "operationId": "WebApps_GetHybridConnection", + "summary": "This is to allow calling via powershell and ARM template.", + "description": "This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncStatus", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3357,21 +3376,46 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "namespaceName", - "in": "path", - "description": "The namespace for this hybrid connection.", - "required": true, - "type": "string" + "$ref": "#/parameters/subscriptionIdParameter" }, { - "name": "relayName", + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", "in": "path", - "description": "The relay name for this hybrid connection.", + "description": "Name of the app.", "required": true, "type": "string" }, @@ -3383,27 +3427,20 @@ } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" - } - }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "No Content" } } - }, + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/{keyType}/{keyName}": { "put": { "tags": [ "WebApps" ], - "summary": "Creates a new Hybrid Connection using a Service Bus relay.", - "description": "Creates a new Hybrid Connection using a Service Bus relay.", - "operationId": "WebApps_CreateOrUpdateHybridConnection", + "summary": "Add or update a host level secret.", + "description": "Add or update a host level secret.", + "operationId": "WebApps_CreateOrUpdateHostSecret", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3411,31 +3448,31 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "namespaceName", + "name": "keyType", "in": "path", - "description": "The namespace for this hybrid connection.", + "description": "The type of host key.", "required": true, "type": "string" }, { - "name": "relayName", + "name": "keyName", "in": "path", - "description": "The relay name for this hybrid connection.", + "description": "The name of the key.", "required": true, "type": "string" }, { - "name": "connectionEnvelope", + "name": "key", "in": "body", - "description": "The details of the hybrid connection.", + "description": "The key to create or update", "required": true, "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + "$ref": "#/definitions/KeyInfo" } }, { @@ -3446,10 +3483,16 @@ } ], "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, "200": { - "description": "OK", + "description": "Key was updated.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + "$ref": "#/definitions/KeyInfo" } }, "default": { @@ -3464,9 +3507,9 @@ "tags": [ "WebApps" ], - "summary": "Removes a Hybrid Connection from this site.", - "description": "Removes a Hybrid Connection from this site.", - "operationId": "WebApps_DeleteHybridConnection", + "summary": "Delete a host level secret.", + "description": "Delete a host level secret.", + "operationId": "WebApps_DeleteHostSecret", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3474,21 +3517,21 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "namespaceName", + "name": "keyType", "in": "path", - "description": "The namespace for this hybrid connection.", + "description": "The type of host key.", "required": true, "type": "string" }, { - "name": "relayName", + "name": "keyName", "in": "path", - "description": "The relay name for this hybrid connection.", + "description": "The name of the key.", "required": true, "type": "string" }, @@ -3500,21 +3543,29 @@ } ], "responses": { - "200": { - "description": "Successfully deleted hybrid connection." - }, "404": { - "description": "Hybrid connection does not exist." + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { + "get": { "tags": [ "WebApps" ], - "summary": "Creates a new Hybrid Connection using a Service Bus relay.", - "description": "Creates a new Hybrid Connection using a Service Bus relay.", - "operationId": "WebApps_UpdateHybridConnection", + "summary": "Get hostname bindings for an app or a deployment slot.", + "description": "Get hostname bindings for an app or a deployment slot.", + "operationId": "WebApps_ListHostNameBindings", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3522,35 +3573,12 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "namespaceName", - "in": "path", - "description": "The namespace for this hybrid connection.", - "required": true, - "type": "string" - }, - { - "name": "relayName", - "in": "path", - "description": "The relay name for this hybrid connection.", - "required": true, - "type": "string" - }, - { - "name": "connectionEnvelope", - "in": "body", - "description": "The details of the hybrid connection.", - "required": true, - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" - } - }, - { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "#/parameters/subscriptionIdParameter" }, { "$ref": "#/parameters/apiVersionParameter" @@ -3560,7 +3588,7 @@ "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + "$ref": "#/definitions/HostNameBindingCollection" } }, "default": { @@ -3569,17 +3597,20 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/listKeys": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}": { + "get": { "tags": [ "WebApps" ], - "summary": "Gets the send key name and value for a Hybrid Connection.", - "description": "Gets the send key name and value for a Hybrid Connection.", - "operationId": "WebApps_ListHybridConnectionKeys", + "summary": "Get the named hostname binding for an app (or deployment slot, if specified).", + "description": "Get the named hostname binding for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetHostNameBinding", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3587,21 +3618,14 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", - "required": true, - "type": "string" - }, - { - "name": "namespaceName", - "in": "path", - "description": "The namespace for this hybrid connection.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "relayName", + "name": "hostName", "in": "path", - "description": "The relay name for this hybrid connection.", + "description": "Hostname in the hostname binding.", "required": true, "type": "string" }, @@ -3616,7 +3640,7 @@ "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnectionKey" + "$ref": "#/definitions/HostNameBinding" } }, "default": { @@ -3626,16 +3650,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionRelays": { - "get": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Retrieves all Service Bus Hybrid Connections used by this Web App.", - "description": "Retrieves all Service Bus Hybrid Connections used by this Web App.", - "operationId": "WebApps_ListHybridConnections", + "summary": "Creates a hostname binding for an app.", + "description": "Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdateHostNameBinding", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3643,10 +3665,26 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", "required": true, "type": "string" }, + { + "name": "hostNameBinding", + "in": "body", + "description": "Binding details. This is the JSON representation of a HostNameBinding object.", + "required": true, + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -3658,7 +3696,7 @@ "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + "$ref": "#/definitions/HostNameBinding" } }, "default": { @@ -3668,16 +3706,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Gets hybrid connections configured for an app (or deployment slot, if specified).", - "description": "Gets hybrid connections configured for an app (or deployment slot, if specified).", - "operationId": "WebApps_ListRelayServiceConnections", + "summary": "Deletes a hostname binding for an app.", + "description": "Deletes a hostname binding for an app.", + "operationId": "WebApps_DeleteHostNameBinding", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3689,6 +3725,13 @@ "required": true, "type": "string" }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -3698,28 +3741,22 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/RelayServiceConnectionEntity" - } + "description": "Successfully deleted hostname binding." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "Hostname binding does not exist." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets a hybrid connection configuration by its name.", - "description": "Gets a hybrid connection configuration by its name.", - "operationId": "WebApps_GetRelayServiceConnection", + "summary": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "description": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "operationId": "WebApps_GetHybridConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3727,14 +3764,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "The name of the web app.", "required": true, "type": "string" }, { - "name": "entityName", + "name": "namespaceName", "in": "path", - "description": "Name of the hybrid connection.", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", "required": true, "type": "string" }, @@ -3749,7 +3793,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/RelayServiceConnectionEntity" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" } }, "default": { @@ -3764,9 +3808,9 @@ "tags": [ "WebApps" ], - "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", - "description": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", - "operationId": "WebApps_CreateOrUpdateRelayServiceConnection", + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_CreateOrUpdateHybridConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3774,24 +3818,31 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "The name of the web app.", "required": true, "type": "string" }, { - "name": "entityName", + "name": "namespaceName", "in": "path", - "description": "Name of the hybrid connection configuration.", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", "required": true, "type": "string" }, { "name": "connectionEnvelope", "in": "body", - "description": "Details of the hybrid connection configuration.", + "description": "The details of the hybrid connection.", "required": true, "schema": { - "$ref": "#/definitions/RelayServiceConnectionEntity" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" } }, { @@ -3805,7 +3856,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/RelayServiceConnectionEntity" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" } }, "default": { @@ -3820,9 +3871,9 @@ "tags": [ "WebApps" ], - "summary": "Deletes a relay service connection by its name.", - "description": "Deletes a relay service connection by its name.", - "operationId": "WebApps_DeleteRelayServiceConnection", + "summary": "Removes a Hybrid Connection from this site.", + "description": "Removes a Hybrid Connection from this site.", + "operationId": "WebApps_DeleteHybridConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3830,14 +3881,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "The name of the web app.", "required": true, "type": "string" }, { - "name": "entityName", + "name": "namespaceName", "in": "path", - "description": "Name of the hybrid connection configuration.", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", "required": true, "type": "string" }, @@ -3850,10 +3908,10 @@ ], "responses": { "200": { - "description": "Successfully deleted relay service connection." + "description": "Successfully deleted hybrid connection." }, "404": { - "description": "Relay service connection does not exist." + "description": "Hybrid connection does not exist." } } }, @@ -3861,9 +3919,9 @@ "tags": [ "WebApps" ], - "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", - "description": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", - "operationId": "WebApps_UpdateRelayServiceConnection", + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_UpdateHybridConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3871,24 +3929,31 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "The name of the web app.", "required": true, "type": "string" }, { - "name": "entityName", + "name": "namespaceName", "in": "path", - "description": "Name of the hybrid connection configuration.", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", "required": true, "type": "string" }, { "name": "connectionEnvelope", "in": "body", - "description": "Details of the hybrid connection configuration.", + "description": "The details of the hybrid connection.", "required": true, "schema": { - "$ref": "#/definitions/RelayServiceConnectionEntity" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" } }, { @@ -3902,7 +3967,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/RelayServiceConnectionEntity" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" } }, "default": { @@ -3914,14 +3979,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/listKeys": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets all scale-out instances of an app.", - "description": "Gets all scale-out instances of an app.", - "operationId": "WebApps_ListInstanceIdentifiers", + "summary": "Gets the send key name and value for a Hybrid Connection.", + "description": "Gets the send key name and value for a Hybrid Connection.", + "operationId": "WebApps_ListHybridConnectionKeys", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3929,7 +3994,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", "required": true, "type": "string" }, @@ -3944,7 +4023,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/WebAppInstanceCollection" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnectionKey" } }, "default": { @@ -3953,20 +4032,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionRelays": { "get": { "tags": [ "WebApps" ], - "summary": "Get the status of the last MSDeploy operation.", - "description": "Get the status of the last MSDeploy operation.", - "operationId": "WebApps_GetInstanceMsDeployStatus", + "summary": "Retrieves all Service Bus Hybrid Connections used by this Web App.", + "description": "Retrieves all Service Bus Hybrid Connections used by this Web App.", + "operationId": "WebApps_ListHybridConnections", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -3974,14 +4050,7 @@ { "name": "name", "in": "path", - "description": "Name of web app.", - "required": true, - "type": "string" - }, - { - "name": "instanceId", - "in": "path", - "description": "ID of web app instance.", + "description": "The name of the web app.", "required": true, "type": "string" }, @@ -3996,7 +4065,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/MSDeployStatus" + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" } }, "default": { @@ -4006,14 +4075,16 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection": { + "get": { "tags": [ "WebApps" ], - "summary": "Invoke the MSDeploy web app extension.", - "description": "Invoke the MSDeploy web app extension.", - "operationId": "WebApps_CreateInstanceMSDeployOperation", + "summary": "Gets hybrid connections configured for an app (or deployment slot, if specified).", + "description": "Gets hybrid connections configured for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListRelayServiceConnections", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4021,26 +4092,10 @@ { "name": "name", "in": "path", - "description": "Name of web app.", - "required": true, - "type": "string" - }, - { - "name": "instanceId", - "in": "path", - "description": "ID of web app instance.", + "description": "Name of the app.", "required": true, "type": "string" }, - { - "name": "MSDeploy", - "in": "body", - "description": "Details of MSDeploy operation", - "required": true, - "schema": { - "$ref": "#/definitions/MSDeploy" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -4049,27 +4104,29 @@ } ], "responses": { - "201": { - "description": "Deployment is scheduled.", + "200": { + "description": "OK", "schema": { - "$ref": "#/definitions/MSDeployStatus" + "$ref": "#/definitions/RelayServiceConnectionEntity" } }, - "409": { - "description": "Another deployment is in progress." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-long-running-operation": true + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy/log": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}": { "get": { "tags": [ "WebApps" ], - "summary": "Get the MSDeploy Log for the last MSDeploy operation.", - "description": "Get the MSDeploy Log for the last MSDeploy operation.", - "operationId": "WebApps_GetInstanceMSDeployLog", + "summary": "Gets a hybrid connection configuration by its name.", + "description": "Gets a hybrid connection configuration by its name.", + "operationId": "WebApps_GetRelayServiceConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4077,14 +4134,14 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "instanceId", + "name": "entityName", "in": "path", - "description": "ID of web app instance.", + "description": "Name of the hybrid connection.", "required": true, "type": "string" }, @@ -4097,25 +4154,26 @@ ], "responses": { "200": { - "description": "MSDeploy log returned.", + "description": "OK", "schema": { - "$ref": "#/definitions/MSDeployLog" + "$ref": "#/definitions/RelayServiceConnectionEntity" } }, - "404": { - "description": "MSDeploy log not found." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes": { - "get": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", - "description": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", - "operationId": "WebApps_ListInstanceProcesses", + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_CreateOrUpdateRelayServiceConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4123,17 +4181,26 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "instanceId", + "name": "entityName", "in": "path", - "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "description": "Name of the hybrid connection configuration.", "required": true, "type": "string" }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -4143,28 +4210,26 @@ ], "responses": { "200": { - "description": "Process terminated.", + "description": "OK", "schema": { - "$ref": "#/definitions/ProcessInfoCollection" + "$ref": "#/definitions/RelayServiceConnectionEntity" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", - "description": "Get process information by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetInstanceProcess", + "summary": "Deletes a relay service connection by its name.", + "description": "Deletes a relay service connection by its name.", + "operationId": "WebApps_DeleteRelayServiceConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4172,21 +4237,14 @@ { "name": "name", "in": "path", - "description": "Site name.", - "required": true, - "type": "string" - }, - { - "name": "processId", - "in": "path", - "description": "PID.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "instanceId", + "name": "entityName", "in": "path", - "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "description": "Name of the hybrid connection configuration.", "required": true, "type": "string" }, @@ -4199,23 +4257,20 @@ ], "responses": { "200": { - "description": "Process information returned.", - "schema": { - "$ref": "#/definitions/ProcessInfo" - } + "description": "Successfully deleted relay service connection." }, "404": { - "description": "Process with the specified ID is not running." + "description": "Relay service connection does not exist." } } }, - "delete": { + "patch": { "tags": [ "WebApps" ], - "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", - "description": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", - "operationId": "WebApps_DeleteInstanceProcess", + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_UpdateRelayServiceConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4223,23 +4278,25 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "processId", + "name": "entityName", "in": "path", - "description": "PID.", + "description": "Name of the hybrid connection configuration.", "required": true, "type": "string" }, { - "name": "instanceId", - "in": "path", - "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -4249,23 +4306,29 @@ } ], "responses": { - "204": { - "description": "Process terminated." + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/dump": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances": { "get": { "tags": [ "WebApps" ], - "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", - "description": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetInstanceProcessDump", + "summary": "Gets all scale-out instances of an app.", + "description": "Gets all scale-out instances of an app.", + "operationId": "WebApps_ListInstanceIdentifiers", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4273,21 +4336,7 @@ { "name": "name", "in": "path", - "description": "Site name.", - "required": true, - "type": "string" - }, - { - "name": "processId", - "in": "path", - "description": "PID.", - "required": true, - "type": "string" - }, - { - "name": "instanceId", - "in": "path", - "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "description": "Name of the app.", "required": true, "type": "string" }, @@ -4302,23 +4351,29 @@ "200": { "description": "OK", "schema": { - "type": "file" + "$ref": "#/definitions/WebAppInstanceCollection" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy": { "get": { "tags": [ "WebApps" ], - "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", - "description": "List module information for a process by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_ListInstanceProcessModules", + "summary": "Get the status of the last MSDeploy operation.", + "description": "Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMsDeployStatus", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4326,21 +4381,14 @@ { "name": "name", "in": "path", - "description": "Site name.", - "required": true, - "type": "string" - }, - { - "name": "processId", - "in": "path", - "description": "PID.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "instanceId", "in": "path", - "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "description": "ID of web app instance.", "required": true, "type": "string" }, @@ -4353,28 +4401,26 @@ ], "responses": { "200": { - "description": "Module information returned.", + "description": "OK", "schema": { - "$ref": "#/definitions/ProcessModuleInfoCollection" + "$ref": "#/definitions/MSDeployStatus" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}": { - "get": { - "tags": [ + }, + "put": { + "tags": [ "WebApps" ], - "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", - "description": "Get process information by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetInstanceProcessModule", + "summary": "Invoke the MSDeploy web app extension.", + "description": "Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateInstanceMSDeployOperation", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4382,28 +4428,70 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "processId", + "name": "instanceId", "in": "path", - "description": "PID.", + "description": "ID of web app instance.", "required": true, "type": "string" }, { - "name": "baseAddress", + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMSDeployLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", "in": "path", - "description": "Module base address.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "instanceId", "in": "path", - "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "description": "ID of web app instance.", "required": true, "type": "string" }, @@ -4416,25 +4504,25 @@ ], "responses": { "200": { - "description": "Module information returned.", + "description": "MSDeploy log returned.", "schema": { - "$ref": "#/definitions/ProcessModuleInfo" + "$ref": "#/definitions/MSDeployLog" } }, "404": { - "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + "description": "MSDeploy log not found." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes": { "get": { "tags": [ "WebApps" ], - "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", - "description": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_ListInstanceProcessThreads", + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcesses", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4446,13 +4534,6 @@ "required": true, "type": "string" }, - { - "name": "processId", - "in": "path", - "description": "PID.", - "required": true, - "type": "string" - }, { "name": "instanceId", "in": "path", @@ -4469,9 +4550,9 @@ ], "responses": { "200": { - "description": "Thread information returned.", + "description": "Process terminated.", "schema": { - "$ref": "#/definitions/ProcessThreadInfoCollection" + "$ref": "#/definitions/ProcessInfoCollection" } }, "404": { @@ -4483,14 +4564,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads/{threadId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}": { "get": { "tags": [ "WebApps" ], - "summary": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", - "description": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetInstanceProcessThread", + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcess", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4509,13 +4590,6 @@ "required": true, "type": "string" }, - { - "name": "threadId", - "in": "path", - "description": "TID.", - "required": true, - "type": "string" - }, { "name": "instanceId", "in": "path", @@ -4532,25 +4606,23 @@ ], "responses": { "200": { - "description": "Thread information returned.", + "description": "Process information returned.", "schema": { - "$ref": "#/definitions/ProcessThreadInfo" + "$ref": "#/definitions/ProcessInfo" } }, "404": { - "description": "Either the thread with the specified TID was not found, or the process with the specified PID is not running." + "description": "Process with the specified ID is not running." } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/iscloneable": { - "post": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Shows whether an app can be cloned to another resource group or subscription.", - "description": "Shows whether an app can be cloned to another resource group or subscription.", - "operationId": "WebApps_IsCloneable", + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteInstanceProcess", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4558,7 +4630,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", "required": true, "type": "string" }, @@ -4570,29 +4656,23 @@ } ], "responses": { - "200": { - "description": "OK.", - "schema": { - "$ref": "#/definitions/SiteCloneability" - } + "204": { + "description": "Process terminated." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listsyncfunctiontriggerstatus": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/dump": { + "get": { "tags": [ "WebApps" ], - "summary": "This is to allow calling via powershell and ARM template.", - "description": "This is to allow calling via powershell and ARM template.", - "operationId": "WebApps_ListSyncFunctionTriggers", + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessDump", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4600,7 +4680,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", "required": true, "type": "string" }, @@ -4615,26 +4709,23 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/FunctionSecrets" + "type": "file" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/metricdefinitions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules": { "get": { "tags": [ "WebApps" ], - "summary": "Gets all metric definitions of an app (or deployment slot, if specified).", - "description": "Gets all metric definitions of an app (or deployment slot, if specified).", - "operationId": "WebApps_ListMetricDefinitions", + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessModules", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4642,7 +4733,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", "required": true, "type": "string" }, @@ -4655,16 +4760,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Module information returned.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/ResourceMetricDefinitionCollection" + "$ref": "#/definitions/ProcessModuleInfoCollection" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } }, "x-ms-pageable": { @@ -4672,14 +4774,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/metrics": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets performance metrics of an app (or deployment slot, if specified).", - "description": "Gets performance metrics of an app (or deployment slot, if specified).", - "operationId": "WebApps_ListMetrics", + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessModule", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4687,25 +4789,33 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "details", - "in": "query", - "description": "Specify \"true\" to include metric details in the response. It is \"false\" by default.", - "type": "boolean" + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" }, { - "name": "$filter", - "in": "query", - "description": "Return only metrics specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", - "type": "string", - "x-ms-skip-url-encoding": true + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, { "$ref": "#/parameters/apiVersionParameter" @@ -4713,57 +4823,49 @@ ], "responses": { "200": { - "description": "OK", + "description": "Module information returned.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/ResourceMetricCollection" + "$ref": "#/definitions/ProcessModuleInfo" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migrate": { - "put": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads": { + "get": { "tags": [ "WebApps" ], - "summary": "Restores a web app.", - "description": "Restores a web app.", - "operationId": "WebApps_MigrateStorage", + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessThreads", "parameters": [ - { - "name": "subscriptionName", - "in": "query", - "description": "Azure subscription.", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/resourceGroupNameParameter" }, { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "migrationOptions", - "in": "body", - "description": "Migration migrationOptions.", + "name": "processId", + "in": "path", + "description": "PID.", "required": true, - "schema": { - "$ref": "#/definitions/StorageMigrationOptions" - } + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -4774,29 +4876,28 @@ ], "responses": { "200": { - "description": "OK", + "description": "Thread information returned.", "schema": { - "$ref": "#/definitions/StorageMigrationResponse" + "$ref": "#/definitions/ProcessThreadInfoCollection" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } }, - "x-ms-long-running-operation": true + "x-ms-pageable": { + "nextLinkName": "nextLink" + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads/{threadId}": { + "get": { "tags": [ "WebApps" ], - "summary": "Migrates a local (in-app) MySql database to a remote MySql database.", - "description": "Migrates a local (in-app) MySql database to a remote MySql database.", - "operationId": "WebApps_MigrateMySql", + "summary": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", + "description": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessThread", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4804,18 +4905,30 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "migrationRequestEnvelope", - "in": "body", - "description": "MySql migration options.", + "name": "processId", + "in": "path", + "description": "PID.", "required": true, - "schema": { - "$ref": "#/definitions/MigrateMySqlRequest" - } + "type": "string" + }, + { + "name": "threadId", + "in": "path", + "description": "TID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -4826,29 +4939,25 @@ ], "responses": { "200": { - "description": "OK", + "description": "Thread information returned.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "$ref": "#/definitions/ProcessThreadInfo" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Either the thread with the specified TID was not found, or the process with the specified PID is not running." } - }, - "x-ms-long-running-operation": true + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql/status": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/iscloneable": { + "post": { "tags": [ "WebApps" ], - "summary": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", - "description": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", - "operationId": "WebApps_GetMigrateMySqlStatus", + "summary": "Shows whether an app can be cloned to another resource group or subscription.", + "description": "Shows whether an app can be cloned to another resource group or subscription.", + "operationId": "WebApps_IsCloneable", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4856,7 +4965,7 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app.", "required": true, "type": "string" }, @@ -4869,9 +4978,9 @@ ], "responses": { "200": { - "description": "OK", + "description": "OK.", "schema": { - "$ref": "#/definitions/MigrateMySqlStatus" + "$ref": "#/definitions/SiteCloneability" } }, "default": { @@ -4883,14 +4992,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkConfig/virtualNetwork": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listsyncfunctiontriggerstatus": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets a Swift Virtual Network connection.", - "description": "Gets a Swift Virtual Network connection.", - "operationId": "WebApps_GetSwiftVirtualNetworkConnection", + "summary": "This is to allow calling via powershell and ARM template.", + "description": "This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncFunctionTriggers", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4911,9 +5020,9 @@ ], "responses": { "200": { - "description": "OK.", + "description": "OK", "schema": { - "$ref": "#/definitions/SwiftVirtualNetwork" + "$ref": "#/definitions/FunctionSecrets" } }, "default": { @@ -4923,14 +5032,16 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/metricdefinitions": { + "get": { "tags": [ "WebApps" ], - "summary": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\r\nin use by another App Service Plan other than the one this App is in.", - "description": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\nin use by another App Service Plan other than the one this App is in.", - "operationId": "WebApps_CreateOrUpdateSwiftVirtualNetworkConnection", + "summary": "Gets all metric definitions of an app (or deployment slot, if specified).", + "description": "Gets all metric definitions of an app (or deployment slot, if specified).", + "operationId": "WebApps_ListMetricDefinitions", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4942,15 +5053,6 @@ "required": true, "type": "string" }, - { - "name": "connectionEnvelope", - "in": "body", - "description": "Properties of the Virtual Network connection. See example.", - "required": true, - "schema": { - "$ref": "#/definitions/SwiftVirtualNetwork" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -4962,7 +5064,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SwiftVirtualNetwork" + "$ref": "./CommonDefinitions.json#/definitions/ResourceMetricDefinitionCollection" } }, "default": { @@ -4971,15 +5073,20 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/metrics": { + "get": { "tags": [ "WebApps" ], - "summary": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", - "description": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", - "operationId": "WebApps_DeleteSwiftVirtualNetwork", + "summary": "Gets performance metrics of an app (or deployment slot, if specified).", + "description": "Gets performance metrics of an app (or deployment slot, if specified).", + "operationId": "WebApps_ListMetrics", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -4991,6 +5098,19 @@ "required": true, "type": "string" }, + { + "name": "details", + "in": "query", + "description": "Specify \"true\" to include metric details in the response. It is \"false\" by default.", + "type": "boolean" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only metrics specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5000,38 +5120,56 @@ ], "responses": { "200": { - "description": "Successfully deleted virtual network." + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/ResourceMetricCollection" + } }, - "404": { - "description": "Virtual network does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migrate": { + "put": { "tags": [ "WebApps" ], - "summary": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\r\nin use by another App Service Plan other than the one this App is in.", - "description": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\nin use by another App Service Plan other than the one this App is in.", - "operationId": "WebApps_UpdateSwiftVirtualNetworkConnection", + "summary": "Restores a web app.", + "description": "Restores a web app.", + "operationId": "WebApps_MigrateStorage", "parameters": [ + { + "name": "subscriptionName", + "in": "query", + "description": "Azure subscription.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/resourceGroupNameParameter" }, { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "connectionEnvelope", + "name": "migrationOptions", "in": "body", - "description": "Properties of the Virtual Network connection. See example.", + "description": "Migration migrationOptions.", "required": true, "schema": { - "$ref": "#/definitions/SwiftVirtualNetwork" + "$ref": "#/definitions/StorageMigrationOptions" } }, { @@ -5045,7 +5183,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SwiftVirtualNetwork" + "$ref": "#/definitions/StorageMigrationResponse" } }, "default": { @@ -5054,17 +5192,18 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkFeatures/{view}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets all network features used by the app (or deployment slot, if specified).", - "description": "Gets all network features used by the app (or deployment slot, if specified).", - "operationId": "WebApps_ListNetworkFeatures", + "summary": "Migrates a local (in-app) MySql database to a remote MySql database.", + "description": "Migrates a local (in-app) MySql database to a remote MySql database.", + "operationId": "WebApps_MigrateMySql", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5072,16 +5211,18 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "view", - "in": "path", - "description": "The type of view. This can either be \"summary\" or \"detailed\".", + "name": "migrationRequestEnvelope", + "in": "body", + "description": "MySql migration options.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/MigrateMySqlRequest" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -5092,25 +5233,29 @@ ], "responses": { "200": { - "description": "OK.", + "description": "OK", "schema": { - "$ref": "#/definitions/NetworkFeatures" + "$ref": "./CommonDefinitions.json#/definitions/Operation" } }, - "404": { - "description": "The requested view does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/operationresults/{operationId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql/status": { "get": { "tags": [ "WebApps" ], - "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "operationId": "WebApps_GetNetworkTraceOperation", + "summary": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "description": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "operationId": "WebApps_GetMigrateMySqlStatus", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5118,14 +5263,7 @@ { "name": "name", "in": "path", - "description": "Name of the app.", - "required": true, - "type": "string" - }, - { - "name": "operationId", - "in": "path", - "description": "GUID of the operation.", + "description": "Name of web app.", "required": true, "type": "string" }, @@ -5140,19 +5278,7 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } - } - }, - "202": { - "description": "Operation is in progress.", - "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } + "$ref": "#/definitions/MigrateMySqlStatus" } }, "default": { @@ -5161,22 +5287,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-examples": { - "Get the current status of a network trace operation for a site": { - "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" - } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/start": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkConfig/virtualNetwork": { + "get": { "tags": [ "WebApps" ], - "summary": "Start capturing network packets for the site (To be deprecated).", - "description": "Start capturing network packets for the site (To be deprecated).", - "operationId": "WebApps_StartWebSiteNetworkTrace", + "summary": "Gets a Swift Virtual Network connection.", + "description": "Gets a Swift Virtual Network connection.", + "operationId": "WebApps_GetSwiftVirtualNetworkConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5184,30 +5305,10 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", "required": true, "type": "string" }, - { - "name": "durationInSeconds", - "in": "query", - "description": "The duration to keep capturing in seconds.", - "type": "integer", - "format": "int32" - }, - { - "name": "maxFrameLength", - "in": "query", - "description": "The maximum frame length in bytes (Optional).", - "type": "integer", - "format": "int32" - }, - { - "name": "sasUrl", - "in": "query", - "description": "The Blob URL to store capture file.", - "type": "string" - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5217,9 +5318,9 @@ ], "responses": { "200": { - "description": "OK", + "description": "OK.", "schema": { - "type": "string" + "$ref": "#/definitions/SwiftVirtualNetwork" } }, "default": { @@ -5229,16 +5330,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/startOperation": { - "post": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Start capturing network packets for the site.", - "description": "Start capturing network packets for the site.", - "operationId": "WebApps_StartWebSiteNetworkTraceOperation", + "summary": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\r\nin use by another App Service Plan other than the one this App is in.", + "description": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\nin use by another App Service Plan other than the one this App is in.", + "operationId": "WebApps_CreateOrUpdateSwiftVirtualNetworkConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5246,29 +5345,18 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "durationInSeconds", - "in": "query", - "description": "The duration to keep capturing in seconds.", - "type": "integer", - "format": "int32" - }, - { - "name": "maxFrameLength", - "in": "query", - "description": "The maximum frame length in bytes (Optional).", - "type": "integer", - "format": "int32" - }, - { - "name": "sasUrl", - "in": "query", - "description": "The Blob URL to store capture file.", - "type": "string" + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -5281,19 +5369,7 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } - } - }, - "202": { - "description": "Operation is in progress.", - "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } + "$ref": "#/definitions/SwiftVirtualNetwork" } }, "default": { @@ -5302,23 +5378,15 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-examples": { - "Start a new network trace operation for a site": { - "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/stop": { - "post": { + } + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Stop ongoing capturing network packets for the site.", - "description": "Stop ongoing capturing network packets for the site.", - "operationId": "WebApps_StopWebSiteNetworkTrace", + "summary": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "description": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "operationId": "WebApps_DeleteSwiftVirtualNetwork", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5326,7 +5394,7 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", "required": true, "type": "string" }, @@ -5339,27 +5407,20 @@ ], "responses": { "200": { - "description": "Stopped." + "description": "Successfully deleted virtual network." }, - "204": { - "description": "Stopped." - } - }, - "x-ms-examples": { - "Stop a currently running network trace operation for a site": { - "$ref": "./examples/StopWebSiteNetworkTrace.json" + "404": { + "description": "Virtual network does not exist." } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/{operationId}": { - "get": { + }, + "patch": { "tags": [ "WebApps" ], - "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "operationId": "WebApps_GetNetworkTraces", + "summary": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\r\nin use by another App Service Plan other than the one this App is in.", + "description": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\nin use by another App Service Plan other than the one this App is in.", + "operationId": "WebApps_UpdateSwiftVirtualNetworkConnection", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5372,11 +5433,13 @@ "type": "string" }, { - "name": "operationId", - "in": "path", - "description": "GUID of the operation.", + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -5389,10 +5452,7 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } + "$ref": "#/definitions/SwiftVirtualNetwork" } }, "default": { @@ -5401,22 +5461,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-examples": { - "Get NetworkTraces for a site": { - "$ref": "./examples/GetWebSiteNetworkTraces.json" - } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/current/operationresults/{operationId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkFeatures/{view}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "operationId": "WebApps_GetNetworkTraceOperationV2", + "summary": "Gets all network features used by the app (or deployment slot, if specified).", + "description": "Gets all network features used by the app (or deployment slot, if specified).", + "operationId": "WebApps_ListNetworkFeatures", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5429,9 +5484,9 @@ "type": "string" }, { - "name": "operationId", + "name": "view", "in": "path", - "description": "GUID of the operation.", + "description": "The type of view. This can either be \"summary\" or \"detailed\".", "required": true, "type": "string" }, @@ -5444,45 +5499,25 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } - } - }, - "202": { - "description": "Operation is in progress.", + "description": "OK.", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkTrace" - } + "$ref": "#/definitions/NetworkFeatures" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } - } - }, - "x-ms-examples": { - "Get the current status of a network trace operation for a site": { - "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + "404": { + "description": "The requested view does not exist." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/{operationId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/operationresults/{operationId}": { "get": { "tags": [ "WebApps" ], "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", - "operationId": "WebApps_GetNetworkTracesV2", + "operationId": "WebApps_GetNetworkTraceOperation", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5518,6 +5553,15 @@ } } }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, "default": { "description": "App Service error response.", "schema": { @@ -5526,20 +5570,20 @@ } }, "x-ms-examples": { - "Get NetworkTraces for a site": { - "$ref": "./examples/GetWebSiteNetworkTraces.json" + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/newpassword": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/start": { "post": { "tags": [ "WebApps" ], - "summary": "Generates a new publishing password for an app (or deployment slot, if specified).", - "description": "Generates a new publishing password for an app (or deployment slot, if specified).", - "operationId": "WebApps_GenerateNewSitePublishingPassword", + "summary": "Start capturing network packets for the site (To be deprecated).", + "description": "Start capturing network packets for the site (To be deprecated).", + "operationId": "WebApps_StartWebSiteNetworkTrace", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5547,10 +5591,30 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "The name of the web app.", "required": true, "type": "string" }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5560,22 +5624,28 @@ ], "responses": { "200": { - "description": "Successfully generate new password." + "description": "OK", + "schema": { + "type": "string" + } }, - "204": { - "description": "Successfully generate new password." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/perfcounters": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/startOperation": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets perfmon counters for web app.", - "description": "Gets perfmon counters for web app.", - "operationId": "WebApps_ListPerfMonCounters", + "summary": "Start capturing network packets for the site.", + "description": "Start capturing network packets for the site.", + "operationId": "WebApps_StartWebSiteNetworkTraceOperation", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5583,16 +5653,29 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "The name of the web app.", "required": true, "type": "string" }, { - "name": "$filter", + "name": "durationInSeconds", "in": "query", - "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", - "type": "string", - "x-ms-skip-url-encoding": true + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -5605,7 +5688,19 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PerfMonCounterCollection" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5615,19 +5710,22 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/phplogging": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/stop": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets web app's event logs.", - "description": "Gets web app's event logs.", - "operationId": "WebApps_GetSitePhpErrorLogFlag", + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopWebSiteNetworkTrace", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5635,7 +5733,7 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "The name of the web app.", "required": true, "type": "string" }, @@ -5648,28 +5746,27 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SitePhpErrorLogFlag" - } + "description": "Stopped." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "Stopped." + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/{operationId}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets the premier add-ons of an app.", - "description": "Gets the premier add-ons of an app.", - "operationId": "WebApps_ListPremierAddOns", + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraces", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5681,6 +5778,13 @@ "required": true, "type": "string" }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5692,7 +5796,10 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PremierAddOn" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5701,17 +5808,22 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons/{premierAddOnName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/current/operationresults/{operationId}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets a named add-on of an app.", - "description": "Gets a named add-on of an app.", - "operationId": "WebApps_GetPremierAddOn", + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationV2", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5724,9 +5836,9 @@ "type": "string" }, { - "name": "premierAddOnName", + "name": "operationId", "in": "path", - "description": "Add-on name.", + "description": "GUID of the operation.", "required": true, "type": "string" }, @@ -5741,7 +5853,19 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PremierAddOn" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5750,15 +5874,22 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/{operationId}": { + "get": { "tags": [ "WebApps" ], - "summary": "Updates a named add-on of an app.", - "description": "Updates a named add-on of an app.", - "operationId": "WebApps_AddPremierAddOn", + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesV2", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5771,21 +5902,12 @@ "type": "string" }, { - "name": "premierAddOnName", + "name": "operationId", "in": "path", - "description": "Add-on name.", + "description": "GUID of the operation.", "required": true, "type": "string" }, - { - "name": "premierAddOn", - "in": "body", - "description": "A JSON representation of the edited premier add-on.", - "required": true, - "schema": { - "$ref": "#/definitions/PremierAddOn" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5797,7 +5919,10 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PremierAddOn" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5806,15 +5931,22 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/newpassword": { + "post": { "tags": [ "WebApps" ], - "summary": "Delete a premier add-on from an app.", - "description": "Delete a premier add-on from an app.", - "operationId": "WebApps_DeletePremierAddOn", + "summary": "Generates a new publishing password for an app (or deployment slot, if specified).", + "description": "Generates a new publishing password for an app (or deployment slot, if specified).", + "operationId": "WebApps_GenerateNewSitePublishingPassword", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5826,13 +5958,6 @@ "required": true, "type": "string" }, - { - "name": "premierAddOnName", - "in": "path", - "description": "Add-on name.", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5842,17 +5967,22 @@ ], "responses": { "200": { - "description": "Successfully deleted premier add-on." - } + "description": "Successfully generate new password." + }, + "204": { + "description": "Successfully generate new password." + } } - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/perfcounters": { + "get": { "tags": [ "WebApps" ], - "summary": "Updates a named add-on of an app.", - "description": "Updates a named add-on of an app.", - "operationId": "WebApps_UpdatePremierAddOn", + "summary": "Gets perfmon counters for web app.", + "description": "Gets perfmon counters for web app.", + "operationId": "WebApps_ListPerfMonCounters", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5860,25 +5990,16 @@ { "name": "name", "in": "path", - "description": "Name of the app.", - "required": true, - "type": "string" - }, - { - "name": "premierAddOnName", - "in": "path", - "description": "Add-on name.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "premierAddOn", - "in": "body", - "description": "A JSON representation of the edited premier add-on.", - "required": true, - "schema": { - "$ref": "#/definitions/PremierAddOnPatchResource" - } + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -5891,7 +6012,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PremierAddOn" + "$ref": "#/definitions/PerfMonCounterCollection" } }, "default": { @@ -5900,17 +6021,20 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateAccess/virtualNetworks": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/phplogging": { "get": { "tags": [ "WebApps" ], - "summary": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", - "description": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", - "operationId": "WebApps_GetPrivateAccess", + "summary": "Gets web app's event logs.", + "description": "Gets web app's event logs.", + "operationId": "WebApps_GetSitePhpErrorLogFlag", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5918,7 +6042,7 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of web app.", "required": true, "type": "string" }, @@ -5933,7 +6057,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PrivateAccess" + "$ref": "#/definitions/SitePhpErrorLogFlag" } }, "default": { @@ -5943,14 +6067,16 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons": { + "get": { "tags": [ "WebApps" ], - "summary": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", - "description": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", - "operationId": "WebApps_PutPrivateAccessVnet", + "summary": "Gets the premier add-ons of an app.", + "description": "Gets the premier add-ons of an app.", + "operationId": "WebApps_ListPremierAddOns", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -5958,19 +6084,10 @@ { "name": "name", "in": "path", - "description": "The name of the web app.", + "description": "Name of the app.", "required": true, "type": "string" }, - { - "name": "access", - "in": "body", - "description": "The information for the private access", - "required": true, - "schema": { - "$ref": "#/definitions/PrivateAccess" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -5982,7 +6099,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PrivateAccess" + "$ref": "#/definitions/PremierAddOn" } }, "default": { @@ -5994,14 +6111,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons/{premierAddOnName}": { "get": { "tags": [ "WebApps" ], - "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", - "description": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", - "operationId": "WebApps_ListProcesses", + "summary": "Gets a named add-on of an app.", + "description": "Gets a named add-on of an app.", + "operationId": "WebApps_GetPremierAddOn", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6009,7 +6126,14 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", "required": true, "type": "string" }, @@ -6022,28 +6146,26 @@ ], "responses": { "200": { - "description": "Process terminated.", + "description": "OK", "schema": { - "$ref": "#/definitions/ProcessInfoCollection" + "$ref": "#/definitions/PremierAddOn" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}": { - "get": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", - "description": "Get process information by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetProcess", + "summary": "Updates a named add-on of an app.", + "description": "Updates a named add-on of an app.", + "operationId": "WebApps_AddPremierAddOn", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6051,17 +6173,26 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "processId", + "name": "premierAddOnName", "in": "path", - "description": "PID.", + "description": "Add-on name.", "required": true, "type": "string" }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6071,13 +6202,16 @@ ], "responses": { "200": { - "description": "Process information returned.", + "description": "OK", "schema": { - "$ref": "#/definitions/ProcessInfo" + "$ref": "#/definitions/PremierAddOn" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } }, @@ -6085,9 +6219,9 @@ "tags": [ "WebApps" ], - "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", - "description": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", - "operationId": "WebApps_DeleteProcess", + "summary": "Delete a premier add-on from an app.", + "description": "Delete a premier add-on from an app.", + "operationId": "WebApps_DeletePremierAddOn", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6095,14 +6229,14 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "processId", + "name": "premierAddOnName", "in": "path", - "description": "PID.", + "description": "Add-on name.", "required": true, "type": "string" }, @@ -6114,23 +6248,18 @@ } ], "responses": { - "204": { - "description": "Process terminated." - }, - "404": { - "description": "Process with the specified ID is not running." + "200": { + "description": "Successfully deleted premier add-on." } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/dump": { - "get": { + }, + "patch": { "tags": [ "WebApps" ], - "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", - "description": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetProcessDump", + "summary": "Updates a named add-on of an app.", + "description": "Updates a named add-on of an app.", + "operationId": "WebApps_UpdatePremierAddOn", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6138,17 +6267,26 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "processId", + "name": "premierAddOnName", "in": "path", - "description": "PID.", + "description": "Add-on name.", "required": true, "type": "string" }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOnPatchResource" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6160,23 +6298,26 @@ "200": { "description": "OK", "schema": { - "type": "file" + "$ref": "#/definitions/PremierAddOn" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateAccess/virtualNetworks": { "get": { "tags": [ "WebApps" ], - "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", - "description": "List module information for a process by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_ListProcessModules", + "summary": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_GetPrivateAccess", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6184,14 +6325,7 @@ { "name": "name", "in": "path", - "description": "Site name.", - "required": true, - "type": "string" - }, - { - "name": "processId", - "in": "path", - "description": "PID.", + "description": "The name of the web app.", "required": true, "type": "string" }, @@ -6204,28 +6338,26 @@ ], "responses": { "200": { - "description": "Module information returned.", + "description": "OK", "schema": { - "$ref": "#/definitions/ProcessModuleInfoCollection" + "$ref": "#/definitions/PrivateAccess" } }, - "404": { - "description": "Process with the specified ID is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules/{baseAddress}": { - "get": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", - "description": "Get process information by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetProcessModule", + "summary": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_PutPrivateAccessVnet", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6233,23 +6365,18 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "The name of the web app.", "required": true, "type": "string" }, { - "name": "processId", - "in": "path", - "description": "PID.", + "name": "access", + "in": "body", + "description": "The information for the private access", "required": true, - "type": "string" - }, - { - "name": "baseAddress", - "in": "path", - "description": "Module base address.", - "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/PrivateAccess" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -6260,25 +6387,28 @@ ], "responses": { "200": { - "description": "Module information returned.", + "description": "OK", "schema": { - "$ref": "#/definitions/ProcessModuleInfo" + "$ref": "#/definitions/PrivateAccess" } }, - "404": { - "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/threads": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes": { "get": { "tags": [ "WebApps" ], - "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", - "description": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", - "operationId": "WebApps_ListProcessThreads", + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcesses", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6290,13 +6420,6 @@ "required": true, "type": "string" }, - { - "name": "processId", - "in": "path", - "description": "PID.", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6306,9 +6429,9 @@ ], "responses": { "200": { - "description": "Thread information returned.", + "description": "Process terminated.", "schema": { - "$ref": "#/definitions/ProcessThreadInfoCollection" + "$ref": "#/definitions/ProcessInfoCollection" } }, "404": { @@ -6320,14 +6443,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/threads/{threadId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}": { "get": { "tags": [ "WebApps" ], - "summary": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", - "description": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", - "operationId": "WebApps_GetProcessThread", + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcess", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6346,13 +6469,6 @@ "required": true, "type": "string" }, - { - "name": "threadId", - "in": "path", - "description": "TID.", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6362,25 +6478,23 @@ ], "responses": { "200": { - "description": "Thread information returned.", + "description": "Process information returned.", "schema": { - "$ref": "#/definitions/ProcessThreadInfo" + "$ref": "#/definitions/ProcessInfo" } }, "404": { - "description": "Either the thread with the specified TID was not found, or the process with the specified PID is not running." + "description": "Process with the specified ID is not running." } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Get public certificates for an app or a deployment slot.", - "description": "Get public certificates for an app or a deployment slot.", - "operationId": "WebApps_ListPublicCertificates", + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteProcess", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6388,7 +6502,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", "required": true, "type": "string" }, @@ -6400,32 +6521,23 @@ } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/PublicCertificateCollection" - } + "204": { + "description": "Process terminated." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates/{publicCertificateName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/dump": { "get": { "tags": [ "WebApps" ], - "summary": "Get the named public certificate for an app (or deployment slot, if specified).", - "description": "Get the named public certificate for an app (or deployment slot, if specified).", - "operationId": "WebApps_GetPublicCertificate", + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessDump", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6433,14 +6545,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "publicCertificateName", + "name": "processId", "in": "path", - "description": "Public certificate name.", + "description": "PID.", "required": true, "type": "string" }, @@ -6455,24 +6567,23 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/PublicCertificate" + "type": "file" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules": { + "get": { "tags": [ "WebApps" ], - "summary": "Creates a hostname binding for an app.", - "description": "Creates a hostname binding for an app.", - "operationId": "WebApps_CreateOrUpdatePublicCertificate", + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessModules", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6480,26 +6591,17 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "publicCertificateName", + "name": "processId", "in": "path", - "description": "Public certificate name.", + "description": "PID.", "required": true, "type": "string" }, - { - "name": "publicCertificate", - "in": "body", - "description": "Public certificate details. This is the JSON representation of a PublicCertificate object.", - "required": true, - "schema": { - "$ref": "#/definitions/PublicCertificate" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6509,26 +6611,28 @@ ], "responses": { "200": { - "description": "OK", + "description": "Module information returned.", "schema": { - "$ref": "#/definitions/PublicCertificate" + "$ref": "#/definitions/ProcessModuleInfoCollection" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules/{baseAddress}": { + "get": { "tags": [ "WebApps" ], - "summary": "Deletes a hostname binding for an app.", - "description": "Deletes a hostname binding for an app.", - "operationId": "WebApps_DeletePublicCertificate", + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessModule", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6536,14 +6640,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "publicCertificateName", + "name": "processId", "in": "path", - "description": "Public certificate name.", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", "required": true, "type": "string" }, @@ -6556,25 +6667,25 @@ ], "responses": { "200": { - "description": "Successfully deleted hostname binding." + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } }, - "204": { - "description": "Hostname binding does not exist." + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publishxml": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/threads": { + "get": { "tags": [ "WebApps" ], - "summary": "Gets the publishing profile for an app (or deployment slot, if specified).", - "description": "Gets the publishing profile for an app (or deployment slot, if specified).", - "operationId": "WebApps_ListPublishingProfileXmlWithSecrets", - "produces": [ - "application/xml" - ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessThreads", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6582,18 +6693,16 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "publishingProfileOptions", - "in": "body", - "description": "Specifies publishingProfileOptions for publishing profile. For example, use {\"format\": \"FileZilla3\"} to get a FileZilla publishing profile.", + "name": "processId", + "in": "path", + "description": "PID.", "required": true, - "schema": { - "$ref": "#/definitions/CsmPublishingProfileOptions" - } + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -6604,28 +6713,28 @@ ], "responses": { "200": { - "description": "OK", + "description": "Thread information returned.", "schema": { - "type": "file" + "$ref": "#/definitions/ProcessThreadInfoCollection" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Process with the specified ID is not running." } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resetSlotConfig": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/threads/{threadId}": { + "get": { "tags": [ "WebApps" ], - "summary": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", - "description": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", - "operationId": "WebApps_ResetProductionSlotConfig", + "summary": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", + "description": "Get thread information by Thread ID for a specific process, in a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessThread", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6633,32 +6742,738 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/apiVersionParameter" - } + "name": "threadId", + "in": "path", + "description": "TID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfo" + } + }, + "404": { + "description": "Either the thread with the specified TID was not found, or the process with the specified PID is not running." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get public certificates for an app or a deployment slot.", + "description": "Get public certificates for an app or a deployment slot.", + "operationId": "WebApps_ListPublicCertificates", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates/{publicCertificateName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named public certificate for an app (or deployment slot, if specified).", + "description": "Get the named public certificate for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetPublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdatePublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificate", + "in": "body", + "description": "Public certificate details. This is the JSON representation of a PublicCertificate object.", + "required": true, + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Deletes a hostname binding for an app.", + "operationId": "WebApps_DeletePublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publishxml": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the publishing profile for an app (or deployment slot, if specified).", + "description": "Gets the publishing profile for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListPublishingProfileXmlWithSecrets", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publishingProfileOptions", + "in": "body", + "description": "Specifies publishingProfileOptions for publishing profile. For example, use {\"format\": \"FileZilla3\"} to get a FileZilla publishing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingProfileOptions" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resetSlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "description": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "operationId": "WebApps_ResetProductionSlotConfig", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restart": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restarts an app (or deployment slot, if specified).", + "description": "Restarts an app (or deployment slot, if specified).", + "operationId": "WebApps_Restart", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to apply the configuration settings and restarts the app only if necessary. By default, the API always restarts and reprovisions the app.", + "type": "boolean" + }, + { + "name": "synchronous", + "in": "query", + "description": "Specify true to block until the app is restarted. By default, it is set to false, and the API responds immediately (asynchronous).", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restarted app." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromBackupBlob": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores an app from a backup blob in Azure Storage.", + "description": "Restores an app from a backup blob in Azure Storage.", + "operationId": "WebApps_RestoreFromBackupBlob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromDeletedApp": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a deleted web app to this web app.", + "description": "Restores a deleted web app to this web app.", + "operationId": "WebApps_RestoreFromDeletedApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Deleted web app restore information.", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedAppRestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreSnapshot": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app from a snapshot.", + "description": "Restores a web app from a snapshot.", + "operationId": "WebApps_RestoreSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Snapshot restore settings. Snapshot information can be obtained by calling GetDeletedSites or GetSiteSnapshots API.", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotRestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of siteextensions for a web site, or a deployment slot.", + "description": "Get list of siteextensions for a web site, or a deployment slot.", + "operationId": "WebApps_ListSiteExtensions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfoCollection" + } + }, + "404": { + "description": "SiteExtension not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions/{siteExtensionId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get site extension information by its ID for a web site, or a deployment slot.", + "description": "Get site extension information by its ID for a web site, or a deployment slot.", + "operationId": "WebApps_GetSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Install site extension on a web site, or a deployment slot.", + "description": "Install site extension on a web site, or a deployment slot.", + "operationId": "WebApps_InstallSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "200": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "429": { + "description": "Site Extension is being installed on another request: Rejecting current request." + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Remove a site extension from a web site, or a deployment slot.", + "description": "Remove a site extension from a web site, or a deployment slot.", + "operationId": "WebApps_DeleteSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "SiteExtension terminated." + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's deployment slots.", + "description": "Gets an app's deployment slots.", + "operationId": "WebApps_ListSlots", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { - "description": "OK." + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restart": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}": { + "get": { "tags": [ "WebApps" ], - "summary": "Restarts an app (or deployment slot, if specified).", - "description": "Restarts an app (or deployment slot, if specified).", - "operationId": "WebApps_Restart", + "summary": "Gets the details of a web, mobile, or API app.", + "description": "Gets the details of a web, mobile, or API app.", + "operationId": "WebApps_GetSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6671,16 +7486,11 @@ "type": "string" }, { - "name": "softRestart", - "in": "query", - "description": "Specify true to apply the configuration settings and restarts the app only if necessary. By default, the API always restarts and reprovisions the app.", - "type": "boolean" - }, - { - "name": "synchronous", - "in": "query", - "description": "Specify true to block until the app is restarted. By default, it is set to false, and the API responds immediately (asynchronous).", - "type": "boolean" + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. By default, this API returns the production slot.", + "required": true, + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -6691,19 +7501,23 @@ ], "responses": { "200": { - "description": "Successfully restarted app." + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "404": { + "description": "Not found." } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromBackupBlob": { - "post": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Restores an app from a backup blob in Azure Storage.", - "description": "Restores an app from a backup blob in Azure Storage.", - "operationId": "WebApps_RestoreFromBackupBlob", + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_CreateOrUpdateSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6711,19 +7525,26 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", "required": true, "type": "string" }, { - "name": "request", + "name": "siteEnvelope", "in": "body", - "description": "Information on restore request .", + "description": "A JSON representation of the app properties. See example.", "required": true, "schema": { - "$ref": "#/definitions/RestoreRequest" + "$ref": "./CommonDefinitions.json#/definitions/Site" } }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6732,24 +7553,34 @@ } ], "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, "202": { - "description": "Restore operation started." + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } }, - "200": { - "description": "Restore operation started." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } }, "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromDeletedApp": { - "post": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Restores a deleted web app to this web app.", - "description": "Restores a deleted web app to this web app.", - "operationId": "WebApps_RestoreFromDeletedApp", + "summary": "Deletes a web, mobile, or API app, or one of the deployment slots.", + "description": "Deletes a web, mobile, or API app, or one of the deployment slots.", + "operationId": "WebApps_DeleteSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6757,18 +7588,28 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app to delete.", "required": true, "type": "string" }, { - "name": "restoreRequest", - "in": "body", - "description": "Deleted web app restore information.", + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to delete. By default, the API deletes the production slot.", "required": true, - "schema": { - "$ref": "#/definitions/DeletedAppRestoreRequest" - } + "type": "string" + }, + { + "name": "deleteMetrics", + "in": "query", + "description": "If true, web app metrics are also deleted.", + "type": "boolean" + }, + { + "name": "deleteEmptyServerFarm", + "in": "query", + "description": "Specify true if the App Service plan will be empty after app deletion and you want to delete the empty App Service plan. By default, the empty App Service plan is not deleted.", + "type": "boolean" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -6778,24 +7619,24 @@ } ], "responses": { - "202": { - "description": "Restore operation started." - }, "200": { - "description": "Restore operation started." + "description": "Successfully deleted web app." + }, + "204": { + "description": "Successfully deleted web app." + }, + "404": { + "description": "Web app not found." } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreSnapshot": { - "post": { + } + }, + "patch": { "tags": [ "WebApps" ], - "summary": "Restores a web app from a snapshot.", - "description": "Restores a web app from a snapshot.", - "operationId": "WebApps_RestoreSnapshot", + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_UpdateSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6803,19 +7644,26 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", "required": true, "type": "string" }, { - "name": "restoreRequest", + "name": "siteEnvelope", "in": "body", - "description": "Snapshot restore settings. Snapshot information can be obtained by calling GetDeletedSites or GetSiteSnapshots API.", + "description": "A JSON representation of the app properties. See example.", "required": true, "schema": { - "$ref": "#/definitions/SnapshotRestoreRequest" + "$ref": "#/definitions/SitePatchResource" } }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6824,24 +7672,35 @@ } ], "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, "202": { - "description": "Restore operation started." + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } }, - "200": { - "description": "Restore operation started." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-long-running-operation": true + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/analyzeCustomHostname": { "get": { "tags": [ "WebApps" ], - "summary": "Get list of siteextensions for a web site, or a deployment slot.", - "description": "Get list of siteextensions for a web site, or a deployment slot.", - "operationId": "WebApps_ListSiteExtensions", + "summary": "Analyze a custom hostname.", + "description": "Analyze a custom hostname.", + "operationId": "WebApps_AnalyzeCustomHostnameSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6849,10 +7708,23 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, + { + "name": "hostName", + "in": "query", + "description": "Custom hostname.", + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -6862,28 +7734,28 @@ ], "responses": { "200": { - "description": "SiteExtension information returned.", + "description": "OK", "schema": { - "$ref": "#/definitions/SiteExtensionInfoCollection" + "$ref": "#/definitions/CustomHostnameAnalysisResult" } }, - "404": { - "description": "SiteExtension not found." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions/{siteExtensionId}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/applySlotConfig": { + "post": { "tags": [ "WebApps" ], - "summary": "Get site extension information by its ID for a web site, or a deployment slot.", - "description": "Get site extension information by its ID for a web site, or a deployment slot.", - "operationId": "WebApps_GetSiteExtension", + "summary": "Applies the configuration settings from the target slot onto the current slot.", + "description": "Applies the configuration settings from the target slot onto the current slot.", + "operationId": "WebApps_ApplySlotConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6891,14 +7763,23 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "siteExtensionId", + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", "in": "path", - "description": "Site extension name.", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", "required": true, "type": "string" }, @@ -6911,23 +7792,19 @@ ], "responses": { "200": { - "description": "SiteExtension information returned.", - "schema": { - "$ref": "#/definitions/SiteExtensionInfo" - } - }, - "404": { - "description": "SiteExtension with an ID of {siteExtensionId} is not running." + "description": "OK." } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backup": { + "post": { "tags": [ "WebApps" ], - "summary": "Install site extension on a web site, or a deployment slot.", - "description": "Install site extension on a web site, or a deployment slot.", - "operationId": "WebApps_InstallSiteExtension", + "summary": "Creates a backup of an app.", + "description": "Creates a backup of an app.", + "operationId": "WebApps_BackupSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6935,14 +7812,23 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "siteExtensionId", + "name": "request", + "in": "body", + "description": "Backup configuration. You can use the JSON response from the POST action as input here.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", "in": "path", - "description": "Site extension name.", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a backup for the production slot.", "required": true, "type": "string" }, @@ -6954,31 +7840,29 @@ } ], "responses": { - "201": { - "description": "Site Extension created.", + "200": { + "description": "OK", "schema": { - "$ref": "#/definitions/SiteExtensionInfo" + "$ref": "#/definitions/BackupItem" } }, - "200": { - "description": "Site Extension created.", + "default": { + "description": "App Service error response.", "schema": { - "$ref": "#/definitions/SiteExtensionInfo" + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } - }, - "429": { - "description": "Site Extension is being installed on another request: Rejecting current request." } - }, - "x-ms-long-running-operation": true - }, - "delete": { + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups": { + "get": { "tags": [ "WebApps" ], - "summary": "Remove a site extension from a web site, or a deployment slot.", - "description": "Remove a site extension from a web site, or a deployment slot.", - "operationId": "WebApps_DeleteSiteExtension", + "summary": "Gets existing backups of an app.", + "description": "Gets existing backups of an app.", + "operationId": "WebApps_ListBackupsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -6986,14 +7870,14 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "siteExtensionId", + "name": "slot", "in": "path", - "description": "Site extension name.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get backups of the production slot.", "required": true, "type": "string" }, @@ -7005,23 +7889,32 @@ } ], "responses": { - "204": { - "description": "SiteExtension terminated." + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } }, - "404": { - "description": "SiteExtension with an ID of {siteExtensionId} is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets an app's deployment slots.", - "description": "Gets an app's deployment slots.", - "operationId": "WebApps_ListSlots", + "summary": "Gets a backup of an app by its ID.", + "description": "Gets a backup of an app by its ID.", + "operationId": "WebApps_GetBackupStatusSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7033,6 +7926,20 @@ "required": true, "type": "string" }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a backup of the production slot.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -7044,7 +7951,7 @@ "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + "$ref": "#/definitions/BackupItem" } }, "default": { @@ -7053,20 +7960,15 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Gets the details of a web, mobile, or API app.", - "description": "Gets the details of a web, mobile, or API app.", - "operationId": "WebApps_GetSlot", + "summary": "Deletes a backup of an app by its ID.", + "description": "Deletes a backup of an app by its ID.", + "operationId": "WebApps_DeleteBackupSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7078,10 +7980,17 @@ "required": true, "type": "string" }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. By default, this API returns the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete a backup of the production slot.", "required": true, "type": "string" }, @@ -7094,23 +8003,22 @@ ], "responses": { "200": { - "description": "OK.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Site" - } + "description": "Successfully deleted web app backup item." }, "404": { - "description": "Not found." + "description": "Web app backup item does not exist." } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/list": { + "post": { "tags": [ "WebApps" ], - "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", - "description": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", - "operationId": "WebApps_CreateOrUpdateSlot", + "summary": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "description": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "operationId": "WebApps_ListBackupStatusSecretsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7118,23 +8026,30 @@ { "name": "name", "in": "path", - "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "siteEnvelope", + "name": "backupId", + "in": "path", + "description": "ID of backup.", + "required": true, + "type": "string" + }, + { + "name": "request", "in": "body", - "description": "A JSON representation of the app properties. See example.", + "description": "Information on backup request.", "required": true, "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Site" + "$ref": "#/definitions/BackupRequest" } }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -7147,15 +8062,9 @@ ], "responses": { "200": { - "description": "OK.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Site" - } - }, - "202": { - "description": "Asynchronous operation in progress.", + "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Site" + "$ref": "#/definitions/BackupItem" } }, "default": { @@ -7164,16 +8073,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-long-running-operation": true - }, - "delete": { + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/restore": { + "post": { "tags": [ "WebApps" ], - "summary": "Deletes a web, mobile, or API app, or one of the deployment slots.", - "description": "Deletes a web, mobile, or API app, or one of the deployment slots.", - "operationId": "WebApps_DeleteSlot", + "summary": "Restores a specific backup to another app (or deployment slot, if specified).", + "description": "Restores a specific backup to another app (or deployment slot, if specified).", + "operationId": "WebApps_RestoreSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7181,28 +8091,32 @@ { "name": "name", "in": "path", - "description": "Name of the app to delete.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "slot", + "name": "backupId", "in": "path", - "description": "Name of the deployment slot to delete. By default, the API deletes the production slot.", + "description": "ID of the backup.", "required": true, "type": "string" }, { - "name": "deleteMetrics", - "in": "query", - "description": "If true, web app metrics are also deleted.", - "type": "boolean" + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } }, { - "name": "deleteEmptyServerFarm", - "in": "query", - "description": "Specify true if the App Service plan will be empty after app deletion and you want to delete the empty App Service plan. By default, the empty App Service plan is not deleted.", - "type": "boolean" + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "required": true, + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -7212,24 +8126,24 @@ } ], "responses": { - "200": { - "description": "Successfully deleted web app." - }, - "204": { - "description": "Successfully deleted web app." + "202": { + "description": "Restore operation started." }, - "404": { - "description": "Web app not found." + "200": { + "description": "Restore operation started." } - } - }, - "patch": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config": { + "get": { "tags": [ "WebApps" ], - "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", - "description": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", - "operationId": "WebApps_UpdateSlot", + "summary": "List the configurations of an app", + "description": "List the configurations of an app", + "operationId": "WebApps_ListConfigurationsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7237,23 +8151,14 @@ { "name": "name", "in": "path", - "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "description": "Name of the app.", "required": true, "type": "string" }, - { - "name": "siteEnvelope", - "in": "body", - "description": "A JSON representation of the app properties. See example.", - "required": true, - "schema": { - "$ref": "#/definitions/SitePatchResource" - } - }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", "required": true, "type": "string" }, @@ -7266,15 +8171,9 @@ ], "responses": { "200": { - "description": "OK.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Site" - } - }, - "202": { - "description": "Asynchronous operation in progress.", + "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Site" + "$ref": "#/definitions/SiteConfigResourceCollection" } }, "default": { @@ -7283,17 +8182,20 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/analyzeCustomHostname": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings": { + "put": { "tags": [ "WebApps" ], - "summary": "Analyze a custom hostname.", - "description": "Analyze a custom hostname.", - "operationId": "WebApps_AnalyzeCustomHostnameSlot", + "summary": "Replaces the application settings of an app.", + "description": "Replaces the application settings of an app.", + "operationId": "WebApps_UpdateApplicationSettingsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7301,21 +8203,24 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "slot", - "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "name": "appSettings", + "in": "body", + "description": "Application settings of the app.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/StringDictionary" + } }, { - "name": "hostName", - "in": "query", - "description": "Custom hostname.", + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the application settings for the production slot.", + "required": true, "type": "string" }, { @@ -7329,7 +8234,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/CustomHostnameAnalysisResult" + "$ref": "#/definitions/StringDictionary" } }, "default": { @@ -7341,14 +8246,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/applySlotConfig": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings/list": { "post": { "tags": [ "WebApps" ], - "summary": "Applies the configuration settings from the target slot onto the current slot.", - "description": "Applies the configuration settings from the target slot onto the current slot.", - "operationId": "WebApps_ApplySlotConfigurationSlot", + "summary": "Gets the application settings of an app.", + "description": "Gets the application settings of an app.", + "operationId": "WebApps_ListApplicationSettingsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7360,19 +8265,10 @@ "required": true, "type": "string" }, - { - "name": "slotSwapEntity", - "in": "body", - "description": "JSON object that contains the target slot name. See example.", - "required": true, - "schema": { - "$ref": "#/definitions/CsmSlotEntity" - } - }, { "name": "slot", "in": "path", - "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the application settings for the production slot.", "required": true, "type": "string" }, @@ -7385,19 +8281,28 @@ ], "responses": { "200": { - "description": "OK." + "description": "OK", + "schema": { + "$ref": "#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backup": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings": { + "put": { "tags": [ "WebApps" ], - "summary": "Creates a backup of an app.", - "description": "Creates a backup of an app.", - "operationId": "WebApps_BackupSlot", + "summary": "Updates the Authentication / Authorization settings associated with web app.", + "description": "Updates the Authentication / Authorization settings associated with web app.", + "operationId": "WebApps_UpdateAuthSettingsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7405,23 +8310,23 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "request", + "name": "siteAuthSettings", "in": "body", - "description": "Backup configuration. You can use the JSON response from the POST action as input here.", + "description": "Auth settings associated with web app.", "required": true, "schema": { - "$ref": "#/definitions/BackupRequest" + "$ref": "#/definitions/SiteAuthSettings" } }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will create a backup for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -7436,7 +8341,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BackupItem" + "$ref": "#/definitions/SiteAuthSettings" } }, "default": { @@ -7448,14 +8353,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings/list": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets existing backups of an app.", - "description": "Gets existing backups of an app.", - "operationId": "WebApps_ListBackupsSlot", + "summary": "Gets the Authentication/Authorization settings of an app.", + "description": "Gets the Authentication/Authorization settings of an app.", + "operationId": "WebApps_GetAuthSettingsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7470,7 +8375,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get backups of the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the settings for the production slot.", "required": true, "type": "string" }, @@ -7485,7 +8390,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BackupItemCollection" + "$ref": "#/definitions/SiteAuthSettings" } }, "default": { @@ -7494,20 +8399,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts": { + "put": { "tags": [ "WebApps" ], - "summary": "Gets a backup of an app by its ID.", - "description": "Gets a backup of an app by its ID.", - "operationId": "WebApps_GetBackupStatusSlot", + "summary": "Updates the Azure storage account configurations of an app.", + "description": "Updates the Azure storage account configurations of an app.", + "operationId": "WebApps_UpdateAzureStorageAccountsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7520,16 +8422,18 @@ "type": "string" }, { - "name": "backupId", - "in": "path", - "description": "ID of the backup.", + "name": "azureStorageAccounts", + "in": "body", + "description": "Azure storage accounts of the app.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get a backup of the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", "required": true, "type": "string" }, @@ -7544,7 +8448,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BackupItem" + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" } }, "default": { @@ -7554,14 +8458,16 @@ } } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts/list": { + "post": { "tags": [ "WebApps" ], - "summary": "Deletes a backup of an app by its ID.", - "description": "Deletes a backup of an app by its ID.", - "operationId": "WebApps_DeleteBackupSlot", + "summary": "Gets the Azure storage account configurations of an app.", + "description": "Gets the Azure storage account configurations of an app.", + "operationId": "WebApps_ListAzureStorageAccountsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7573,17 +8479,10 @@ "required": true, "type": "string" }, - { - "name": "backupId", - "in": "path", - "description": "ID of the backup.", - "required": true, - "type": "string" - }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete a backup of the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", "required": true, "type": "string" }, @@ -7596,22 +8495,28 @@ ], "responses": { "200": { - "description": "Successfully deleted web app backup item." + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } }, - "404": { - "description": "Web app backup item does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/list": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup": { + "put": { "tags": [ "WebApps" ], - "summary": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", - "description": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", - "operationId": "WebApps_ListBackupStatusSecretsSlot", + "summary": "Updates the backup configuration of an app.", + "description": "Updates the backup configuration of an app.", + "operationId": "WebApps_UpdateBackupConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7619,21 +8524,14 @@ { "name": "name", "in": "path", - "description": "Name of web app.", - "required": true, - "type": "string" - }, - { - "name": "backupId", - "in": "path", - "description": "ID of backup.", + "description": "Name of the app.", "required": true, "type": "string" }, { "name": "request", "in": "body", - "description": "Information on backup request.", + "description": "Edited backup configuration.", "required": true, "schema": { "$ref": "#/definitions/BackupRequest" @@ -7642,7 +8540,7 @@ { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the backup configuration for the production slot.", "required": true, "type": "string" }, @@ -7657,7 +8555,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BackupItem" + "$ref": "#/definitions/BackupRequest" } }, "default": { @@ -7667,16 +8565,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/restore": { - "post": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Restores a specific backup to another app (or deployment slot, if specified).", - "description": "Restores a specific backup to another app (or deployment slot, if specified).", - "operationId": "WebApps_RestoreSlot", + "summary": "Deletes the backup configuration of an app.", + "description": "Deletes the backup configuration of an app.", + "operationId": "WebApps_DeleteBackupConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7689,25 +8585,49 @@ "type": "string" }, { - "name": "backupId", + "name": "slot", "in": "path", - "description": "ID of the backup.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the backup configuration for the production slot.", "required": true, "type": "string" }, { - "name": "request", - "in": "body", - "description": "Information on restore request .", + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted backup configuration." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the backup configuration of an app.", + "description": "Gets the backup configuration of an app.", + "operationId": "WebApps_GetBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", "required": true, - "schema": { - "$ref": "#/definitions/RestoreRequest" - } + "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the backup configuration for the production slot.", "required": true, "type": "string" }, @@ -7719,24 +8639,29 @@ } ], "responses": { - "202": { - "description": "Restore operation started." - }, "200": { - "description": "Restore operation started." + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-long-running-operation": true + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings": { + "put": { "tags": [ "WebApps" ], - "summary": "List the configurations of an app", - "description": "List the configurations of an app", - "operationId": "WebApps_ListConfigurationsSlot", + "summary": "Replaces the connection strings of an app.", + "description": "Replaces the connection strings of an app.", + "operationId": "WebApps_UpdateConnectionStringsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7748,10 +8673,19 @@ "required": true, "type": "string" }, + { + "name": "connectionStrings", + "in": "body", + "description": "Connection strings of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the connection settings for the production slot.", "required": true, "type": "string" }, @@ -7766,7 +8700,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteConfigResourceCollection" + "$ref": "#/definitions/ConnectionStringDictionary" } }, "default": { @@ -7775,20 +8709,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings": { - "put": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings/list": { + "post": { "tags": [ "WebApps" ], - "summary": "Replaces the application settings of an app.", - "description": "Replaces the application settings of an app.", - "operationId": "WebApps_UpdateApplicationSettingsSlot", + "summary": "Gets the connection strings of an app.", + "description": "Gets the connection strings of an app.", + "operationId": "WebApps_ListConnectionStringsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7800,19 +8731,10 @@ "required": true, "type": "string" }, - { - "name": "appSettings", - "in": "body", - "description": "Application settings of the app.", - "required": true, - "schema": { - "$ref": "#/definitions/StringDictionary" - } - }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the application settings for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the connection settings for the production slot.", "required": true, "type": "string" }, @@ -7827,7 +8749,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/StringDictionary" + "$ref": "#/definitions/ConnectionStringDictionary" } }, "default": { @@ -7839,14 +8761,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings/list": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs": { + "get": { "tags": [ "WebApps" ], - "summary": "Gets the application settings of an app.", - "description": "Gets the application settings of an app.", - "operationId": "WebApps_ListApplicationSettingsSlot", + "summary": "Gets the logging configuration of an app.", + "description": "Gets the logging configuration of an app.", + "operationId": "WebApps_GetDiagnosticLogsConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7861,7 +8783,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the application settings for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the logging configuration for the production slot.", "required": true, "type": "string" }, @@ -7876,7 +8798,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/StringDictionary" + "$ref": "#/definitions/SiteLogsConfig" } }, "default": { @@ -7886,16 +8808,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings": { + }, "put": { "tags": [ "WebApps" ], - "summary": "Updates the Authentication / Authorization settings associated with web app.", - "description": "Updates the Authentication / Authorization settings associated with web app.", - "operationId": "WebApps_UpdateAuthSettingsSlot", + "summary": "Updates the logging configuration of an app.", + "description": "Updates the logging configuration of an app.", + "operationId": "WebApps_UpdateDiagnosticLogsConfigSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7903,23 +8823,23 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "siteAuthSettings", + "name": "siteLogsConfig", "in": "body", - "description": "Auth settings associated with web app.", + "description": "A SiteLogsConfig JSON object that contains the logging configuration to change in the \"properties\" property.", "required": true, "schema": { - "$ref": "#/definitions/SiteAuthSettings" + "$ref": "#/definitions/SiteLogsConfig" } }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the logging configuration for the production slot.", "required": true, "type": "string" }, @@ -7934,7 +8854,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteAuthSettings" + "$ref": "#/definitions/SiteLogsConfig" } }, "default": { @@ -7946,14 +8866,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings/list": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata": { + "put": { "tags": [ "WebApps" ], - "summary": "Gets the Authentication/Authorization settings of an app.", - "description": "Gets the Authentication/Authorization settings of an app.", - "operationId": "WebApps_GetAuthSettingsSlot", + "summary": "Replaces the metadata of an app.", + "description": "Replaces the metadata of an app.", + "operationId": "WebApps_UpdateMetadataSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -7965,10 +8885,19 @@ "required": true, "type": "string" }, + { + "name": "metadata", + "in": "body", + "description": "Edited metadata of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StringDictionary" + } + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the settings for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the metadata for the production slot.", "required": true, "type": "string" }, @@ -7983,7 +8912,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteAuthSettings" + "$ref": "#/definitions/StringDictionary" } }, "default": { @@ -7995,14 +8924,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts": { - "put": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata/list": { + "post": { "tags": [ "WebApps" ], - "summary": "Updates the Azure storage account configurations of an app.", - "description": "Updates the Azure storage account configurations of an app.", - "operationId": "WebApps_UpdateAzureStorageAccountsSlot", + "summary": "Gets the metadata of an app.", + "description": "Gets the metadata of an app.", + "operationId": "WebApps_ListMetadataSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8014,19 +8943,10 @@ "required": true, "type": "string" }, - { - "name": "azureStorageAccounts", - "in": "body", - "description": "Azure storage accounts of the app.", - "required": true, - "schema": { - "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" - } - }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the metadata for the production slot.", "required": true, "type": "string" }, @@ -8041,7 +8961,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + "$ref": "#/definitions/StringDictionary" } }, "default": { @@ -8053,14 +8973,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts/list": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/publishingcredentials/list": { "post": { "tags": [ "WebApps" ], - "summary": "Gets the Azure storage account configurations of an app.", - "description": "Gets the Azure storage account configurations of an app.", - "operationId": "WebApps_ListAzureStorageAccountsSlot", + "summary": "Gets the Git/FTP publishing credentials of an app.", + "description": "Gets the Git/FTP publishing credentials of an app.", + "operationId": "WebApps_ListPublishingCredentialsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8075,7 +8995,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the publishing credentials for the production slot.", "required": true, "type": "string" }, @@ -8090,7 +9010,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + "$ref": "./CommonDefinitions.json#/definitions/User" } }, "default": { @@ -8099,17 +9019,18 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings": { "put": { "tags": [ "WebApps" ], - "summary": "Updates the backup configuration of an app.", - "description": "Updates the backup configuration of an app.", - "operationId": "WebApps_UpdateBackupConfigurationSlot", + "summary": "Updates the Push settings associated with web app.", + "description": "Updates the Push settings associated with web app.", + "operationId": "WebApps_UpdateSitePushSettingsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8117,23 +9038,23 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "request", + "name": "pushSettings", "in": "body", - "description": "Edited backup configuration.", + "description": "Push settings associated with web app.", "required": true, "schema": { - "$ref": "#/definitions/BackupRequest" + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" } }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the backup configuration for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -8148,7 +9069,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BackupRequest" + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" } }, "default": { @@ -8158,14 +9079,16 @@ } } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings/list": { + "post": { "tags": [ "WebApps" ], - "summary": "Deletes the backup configuration of an app.", - "description": "Deletes the backup configuration of an app.", - "operationId": "WebApps_DeleteBackupConfigurationSlot", + "summary": "Gets the Push settings associated with web app.", + "description": "Gets the Push settings associated with web app.", + "operationId": "WebApps_ListSitePushSettingsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8173,14 +9096,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete the backup configuration for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -8193,19 +9116,28 @@ ], "responses": { "200": { - "description": "Successfully deleted backup configuration." + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup/list": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web": { + "get": { "tags": [ "WebApps" ], - "summary": "Gets the backup configuration of an app.", - "description": "Gets the backup configuration of an app.", - "operationId": "WebApps_GetBackupConfigurationSlot", + "summary": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "description": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "operationId": "WebApps_GetConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8220,7 +9152,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the backup configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", "required": true, "type": "string" }, @@ -8235,7 +9167,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BackupRequest" + "$ref": "#/definitions/SiteConfigResource" } }, "default": { @@ -8245,16 +9177,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings": { + }, "put": { "tags": [ "WebApps" ], - "summary": "Replaces the connection strings of an app.", - "description": "Replaces the connection strings of an app.", - "operationId": "WebApps_UpdateConnectionStringsSlot", + "summary": "Updates the configuration of an app.", + "description": "Updates the configuration of an app.", + "operationId": "WebApps_CreateOrUpdateConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8267,18 +9197,18 @@ "type": "string" }, { - "name": "connectionStrings", + "name": "siteConfig", "in": "body", - "description": "Connection strings of the app or deployment slot. See example.", + "description": "JSON representation of a SiteConfig object. See example.", "required": true, "schema": { - "$ref": "#/definitions/ConnectionStringDictionary" + "$ref": "#/definitions/SiteConfigResource" } }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the connection settings for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", "required": true, "type": "string" }, @@ -8293,7 +9223,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ConnectionStringDictionary" + "$ref": "#/definitions/SiteConfigResource" } }, "default": { @@ -8303,16 +9233,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings/list": { - "post": { + }, + "patch": { "tags": [ "WebApps" ], - "summary": "Gets the connection strings of an app.", - "description": "Gets the connection strings of an app.", - "operationId": "WebApps_ListConnectionStringsSlot", + "summary": "Updates the configuration of an app.", + "description": "Updates the configuration of an app.", + "operationId": "WebApps_UpdateConfigurationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8324,10 +9252,19 @@ "required": true, "type": "string" }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the connection settings for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", "required": true, "type": "string" }, @@ -8342,7 +9279,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ConnectionStringDictionary" + "$ref": "#/definitions/SiteConfigResource" } }, "default": { @@ -8354,14 +9291,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots": { "get": { "tags": [ "WebApps" ], - "summary": "Gets the logging configuration of an app.", - "description": "Gets the logging configuration of an app.", - "operationId": "WebApps_GetDiagnosticLogsConfigurationSlot", + "summary": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "description": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "operationId": "WebApps_ListConfigurationSnapshotInfoSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8376,7 +9313,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the logging configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", "required": true, "type": "string" }, @@ -8391,7 +9328,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteLogsConfig" + "$ref": "#/definitions/SiteConfigurationSnapshotInfoCollection" } }, "default": { @@ -8400,15 +9337,20 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}": { + "get": { "tags": [ "WebApps" ], - "summary": "Updates the logging configuration of an app.", - "description": "Updates the logging configuration of an app.", - "operationId": "WebApps_UpdateDiagnosticLogsConfigSlot", + "summary": "Gets a snapshot of the configuration of an app at a previous point in time.", + "description": "Gets a snapshot of the configuration of an app at a previous point in time.", + "operationId": "WebApps_GetConfigurationSnapshotSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8421,18 +9363,16 @@ "type": "string" }, { - "name": "siteLogsConfig", - "in": "body", - "description": "A SiteLogsConfig JSON object that contains the logging configuration to change in the \"properties\" property.", + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", "required": true, - "schema": { - "$ref": "#/definitions/SiteLogsConfig" - } + "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the logging configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", "required": true, "type": "string" }, @@ -8447,7 +9387,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteLogsConfig" + "$ref": "#/definitions/SiteConfigResource" } }, "default": { @@ -8459,14 +9399,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata": { - "put": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}/recover": { + "post": { "tags": [ "WebApps" ], - "summary": "Replaces the metadata of an app.", - "description": "Replaces the metadata of an app.", - "operationId": "WebApps_UpdateMetadataSlot", + "summary": "Reverts the configuration of an app to a previous snapshot.", + "description": "Reverts the configuration of an app to a previous snapshot.", + "operationId": "WebApps_RecoverSiteConfigurationSnapshotSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8479,18 +9419,16 @@ "type": "string" }, { - "name": "metadata", - "in": "body", - "description": "Edited metadata of the app or deployment slot. See example.", + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", "required": true, - "schema": { - "$ref": "#/definitions/StringDictionary" - } + "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update the metadata for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", "required": true, "type": "string" }, @@ -8502,29 +9440,23 @@ } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/StringDictionary" - } - }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "No Content" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata/list": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs": { "post": { "tags": [ "WebApps" ], - "summary": "Gets the metadata of an app.", - "description": "Gets the metadata of an app.", - "operationId": "WebApps_ListMetadataSlot", + "summary": "Gets the last lines of docker logs for the given site", + "description": "Gets the last lines of docker logs for the given site", + "operationId": "WebApps_GetWebSiteContainerLogsSlot", + "produces": [ + "application/octet-stream" + ], "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8532,14 +9464,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the metadata for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -8551,29 +9483,29 @@ } ], "responses": { + "204": { + "description": "No Content" + }, "200": { "description": "OK", "schema": { - "$ref": "#/definitions/StringDictionary" - } - }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + "type": "file" } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/publishingcredentials/list": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs/zip/download": { "post": { "tags": [ "WebApps" ], - "summary": "Gets the Git/FTP publishing credentials of an app.", - "description": "Gets the Git/FTP publishing credentials of an app.", - "operationId": "WebApps_ListPublishingCredentialsSlot", + "summary": "Gets the ZIP archived docker log files for the given site", + "description": "Gets the ZIP archived docker log files for the given site", + "operationId": "WebApps_GetContainerLogsZipSlot", + "produces": [ + "application/zip" + ], "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8581,14 +9513,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will get the publishing credentials for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -8600,30 +9532,26 @@ } ], "responses": { + "204": { + "description": "No Content" + }, "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/User" - } - }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + "type": "file" } } - }, - "x-ms-long-running-operation": true + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings": { - "put": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs": { + "get": { "tags": [ "WebApps" ], - "summary": "Updates the Push settings associated with web app.", - "description": "Updates the Push settings associated with web app.", - "operationId": "WebApps_UpdateSitePushSettingsSlot", + "summary": "List continuous web jobs for an app, or a deployment slot.", + "description": "List continuous web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListContinuousWebJobsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8631,23 +9559,14 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", "required": true, "type": "string" }, - { - "name": "pushSettings", - "in": "body", - "description": "Push settings associated with web app.", - "required": true, - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/PushSettings" - } - }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", "required": true, "type": "string" }, @@ -8662,7 +9581,7 @@ "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + "$ref": "#/definitions/ContinuousWebJobCollection" } }, "default": { @@ -8671,17 +9590,20 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings/list": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}": { + "get": { "tags": [ "WebApps" ], - "summary": "Gets the Push settings associated with web app.", - "description": "Gets the Push settings associated with web app.", - "operationId": "WebApps_ListSitePushSettingsSlot", + "summary": "Gets a continuous web job by its ID for an app, or a deployment slot.", + "description": "Gets a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetContinuousWebJobSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8689,14 +9611,21 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", "required": true, "type": "string" }, @@ -8709,28 +9638,23 @@ ], "responses": { "200": { - "description": "OK", + "description": "Found continuous web job.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + "$ref": "#/definitions/ContinuousWebJob" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Continuous web job does not exist." } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", - "description": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", - "operationId": "WebApps_GetConfigurationSlot", + "summary": "Delete a continuous web job by its ID for an app, or a deployment slot.", + "description": "Delete a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteContinuousWebJobSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8738,14 +9662,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", "required": true, "type": "string" }, @@ -8758,26 +9689,22 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SiteConfigResource" - } + "description": "Successfully deleted continuous web job." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "Continuous web job does not exist." } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/start": { + "post": { "tags": [ - "WebApps" - ], - "summary": "Updates the configuration of an app.", - "description": "Updates the configuration of an app.", - "operationId": "WebApps_CreateOrUpdateConfigurationSlot", + "WebApps" + ], + "summary": "Start a continuous web job for an app, or a deployment slot.", + "description": "Start a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StartContinuousWebJobSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8785,23 +9712,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "siteConfig", - "in": "body", - "description": "JSON representation of a SiteConfig object. See example.", + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", "required": true, - "schema": { - "$ref": "#/definitions/SiteConfigResource" - } + "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", "required": true, "type": "string" }, @@ -8814,26 +9739,22 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SiteConfigResource" - } + "description": "Found continuous web job." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Continuous web job does not exist." } } - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/stop": { + "post": { "tags": [ "WebApps" ], - "summary": "Updates the configuration of an app.", - "description": "Updates the configuration of an app.", - "operationId": "WebApps_UpdateConfigurationSlot", + "summary": "Stop a continuous web job for an app, or a deployment slot.", + "description": "Stop a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StopContinuousWebJobSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8841,23 +9762,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "siteConfig", - "in": "body", - "description": "JSON representation of a SiteConfig object. See example.", + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", "required": true, - "schema": { - "$ref": "#/definitions/SiteConfigResource" - } + "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", "required": true, "type": "string" }, @@ -8870,28 +9789,22 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SiteConfigResource" - } + "description": "Found continuous web job." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Continuous web job does not exist." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments": { "get": { "tags": [ "WebApps" ], - "summary": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", - "description": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", - "operationId": "WebApps_ListConfigurationSnapshotInfoSlot", + "summary": "List deployments for an app, or a deployment slot.", + "description": "List deployments for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8906,7 +9819,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", "required": true, "type": "string" }, @@ -8921,7 +9834,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteConfigurationSnapshotInfoCollection" + "$ref": "#/definitions/DeploymentCollection" } }, "default": { @@ -8936,14 +9849,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}": { "get": { "tags": [ "WebApps" ], - "summary": "Gets a snapshot of the configuration of an app at a previous point in time.", - "description": "Gets a snapshot of the configuration of an app at a previous point in time.", - "operationId": "WebApps_GetConfigurationSnapshotSlot", + "summary": "Get a deployment by its ID for an app, or a deployment slot.", + "description": "Get a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetDeploymentSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -8956,16 +9869,16 @@ "type": "string" }, { - "name": "snapshotId", + "name": "id", "in": "path", - "description": "The ID of the snapshot to read.", + "description": "Deployment ID.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API gets a deployment for the production slot.", "required": true, "type": "string" }, @@ -8980,7 +9893,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SiteConfigResource" + "$ref": "#/definitions/Deployment" } }, "default": { @@ -8990,16 +9903,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}/recover": { - "post": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Reverts the configuration of an app to a previous snapshot.", - "description": "Reverts the configuration of an app to a previous snapshot.", - "operationId": "WebApps_RecoverSiteConfigurationSnapshotSlot", + "summary": "Create a deployment for an app, or a deployment slot.", + "description": "Create a deployment for an app, or a deployment slot.", + "operationId": "WebApps_CreateDeploymentSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9012,61 +9923,27 @@ "type": "string" }, { - "name": "snapshotId", + "name": "id", "in": "path", - "description": "The ID of the snapshot to read.", + "description": "ID of an existing deployment.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs": { - "post": { - "tags": [ - "WebApps" - ], - "summary": "Gets the last lines of docker logs for the given site", - "description": "Gets the last lines of docker logs for the given site", - "operationId": "WebApps_GetWebSiteContainerLogsSlot", - "produces": [ - "application/octet-stream" - ], - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "name": "name", - "in": "path", - "description": "Name of web app.", + "description": "Name of the deployment slot. If a slot is not specified, the API creates a deployment for the production slot.", "required": true, "type": "string" }, { - "name": "slot", - "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "name": "deployment", + "in": "body", + "description": "Deployment details.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/Deployment" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -9076,29 +9953,27 @@ } ], "responses": { - "204": { - "description": "No Content" - }, "200": { "description": "OK", "schema": { - "type": "file" + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs/zip/download": { - "post": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Gets the ZIP archived docker log files for the given site", - "description": "Gets the ZIP archived docker log files for the given site", - "operationId": "WebApps_GetContainerLogsZipSlot", - "produces": [ - "application/zip" - ], + "summary": "Delete a deployment by its ID for an app, or a deployment slot.", + "description": "Delete a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteDeploymentSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9106,14 +9981,21 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", "required": true, "type": "string" }, @@ -9125,26 +10007,23 @@ } ], "responses": { - "204": { - "description": "No Content" - }, "200": { - "description": "OK", - "schema": { - "type": "file" - } + "description": "Successfully deleted deployment." + }, + "204": { + "description": "Deployment does not exist." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}/log": { "get": { "tags": [ "WebApps" ], - "summary": "List continuous web jobs for an app, or a deployment slot.", - "description": "List continuous web jobs for an app, or a deployment slot.", - "operationId": "WebApps_ListContinuousWebJobsSlot", + "summary": "List deployment log for specific deployment for an app, or a deployment slot.", + "description": "List deployment log for specific deployment for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentLogSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9152,14 +10031,21 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "The ID of a specific deployment. This is the value of the name property in the JSON response from \"GET /api/sites/{siteName}/deployments\".", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", "required": true, "type": "string" }, @@ -9174,7 +10060,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ContinuousWebJobCollection" + "$ref": "#/definitions/Deployment" } }, "default": { @@ -9183,20 +10069,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/discoverbackup": { + "post": { "tags": [ "WebApps" ], - "summary": "Gets a continuous web job by its ID for an app, or a deployment slot.", - "description": "Gets a continuous web job by its ID for an app, or a deployment slot.", - "operationId": "WebApps_GetContinuousWebJobSlot", + "summary": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "description": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "operationId": "WebApps_DiscoverBackupSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9204,21 +10087,23 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "webJobName", - "in": "path", - "description": "Name of Web Job.", + "name": "request", + "in": "body", + "description": "A RestoreRequest object that includes Azure storage URL and blog name for discovery of backup.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/RestoreRequest" + } }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will perform discovery for the production slot.", "required": true, "type": "string" }, @@ -9231,23 +10116,28 @@ ], "responses": { "200": { - "description": "Found continuous web job.", + "description": "OK", "schema": { - "$ref": "#/definitions/ContinuousWebJob" + "$ref": "#/definitions/RestoreRequest" } }, - "404": { - "description": "Continuous web job does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers": { + "get": { "tags": [ "WebApps" ], - "summary": "Delete a continuous web job by its ID for an app, or a deployment slot.", - "description": "Delete a continuous web job by its ID for an app, or a deployment slot.", - "operationId": "WebApps_DeleteContinuousWebJobSlot", + "summary": "Lists ownership identifiers for domain associated with web app.", + "description": "Lists ownership identifiers for domain associated with web app.", + "operationId": "WebApps_ListDomainOwnershipIdentifiersSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9255,21 +10145,14 @@ { "name": "name", "in": "path", - "description": "Site name.", - "required": true, - "type": "string" - }, - { - "name": "webJobName", - "in": "path", - "description": "Name of Web Job.", + "description": "Name of the app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", "required": true, "type": "string" }, @@ -9282,22 +10165,31 @@ ], "responses": { "200": { - "description": "Successfully deleted continuous web job." + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } }, - "204": { - "description": "Continuous web job does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/start": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}": { + "get": { "tags": [ "WebApps" ], - "summary": "Start a continuous web job for an app, or a deployment slot.", - "description": "Start a continuous web job for an app, or a deployment slot.", - "operationId": "WebApps_StartContinuousWebJobSlot", + "summary": "Get domain ownership identifier for web app.", + "description": "Get domain ownership identifier for web app.", + "operationId": "WebApps_GetDomainOwnershipIdentifierSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9305,21 +10197,21 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "webJobName", + "name": "domainOwnershipIdentifierName", "in": "path", - "description": "Name of Web Job.", + "description": "Name of domain ownership identifier.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", "required": true, "type": "string" }, @@ -9332,22 +10224,26 @@ ], "responses": { "200": { - "description": "Found continuous web job." + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } }, - "404": { - "description": "Continuous web job does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/stop": { - "post": { + }, + "put": { "tags": [ "WebApps" ], - "summary": "Stop a continuous web job for an app, or a deployment slot.", - "description": "Stop a continuous web job for an app, or a deployment slot.", - "operationId": "WebApps_StopContinuousWebJobSlot", + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_CreateOrUpdateDomainOwnershipIdentifierSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9355,21 +10251,30 @@ { "name": "name", "in": "path", - "description": "Site name.", + "description": "Name of the app.", "required": true, "type": "string" }, { - "name": "webJobName", + "name": "domainOwnershipIdentifierName", "in": "path", - "description": "Name of Web Job.", + "description": "Name of domain ownership identifier.", "required": true, "type": "string" }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", "required": true, "type": "string" }, @@ -9382,22 +10287,26 @@ ], "responses": { "200": { - "description": "Found continuous web job." + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } }, - "404": { - "description": "Continuous web job does not exist." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "List deployments for an app, or a deployment slot.", - "description": "List deployments for an app, or a deployment slot.", - "operationId": "WebApps_ListDeploymentsSlot", + "summary": "Deletes a domain ownership identifier for a web app.", + "description": "Deletes a domain ownership identifier for a web app.", + "operationId": "WebApps_DeleteDomainOwnershipIdentifierSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9409,10 +10318,17 @@ "required": true, "type": "string" }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", "required": true, "type": "string" }, @@ -9425,31 +10341,20 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/DeploymentCollection" - } + "description": "Successfully deleted domain ownership identifier." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "Domain ownership identifier does not exist." } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}": { - "get": { + }, + "patch": { "tags": [ "WebApps" ], - "summary": "Get a deployment by its ID for an app, or a deployment slot.", - "description": "Get a deployment by its ID for an app, or a deployment slot.", - "operationId": "WebApps_GetDeploymentSlot", + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_UpdateDomainOwnershipIdentifierSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9462,16 +10367,25 @@ "type": "string" }, { - "name": "id", + "name": "domainOwnershipIdentifierName", "in": "path", - "description": "Deployment ID.", + "description": "Name of domain ownership identifier.", "required": true, "type": "string" }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API gets a deployment for the production slot.", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", "required": true, "type": "string" }, @@ -9486,7 +10400,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "./CommonDefinitions.json#/definitions/Identifier" } }, "default": { @@ -9496,14 +10410,16 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy": { + "get": { "tags": [ "WebApps" ], - "summary": "Create a deployment for an app, or a deployment slot.", - "description": "Create a deployment for an app, or a deployment slot.", - "operationId": "WebApps_CreateDeploymentSlot", + "summary": "Get the status of the last MSDeploy operation.", + "description": "Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployStatusSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9511,33 +10427,17 @@ { "name": "name", "in": "path", - "description": "Name of the app.", - "required": true, - "type": "string" - }, - { - "name": "id", - "in": "path", - "description": "ID of an existing deployment.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API creates a deployment for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, - { - "name": "deployment", - "in": "body", - "description": "Deployment details.", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - } - }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -9549,7 +10449,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/MSDeployStatus" } }, "default": { @@ -9560,13 +10460,13 @@ } } }, - "delete": { + "put": { "tags": [ "WebApps" ], - "summary": "Delete a deployment by its ID for an app, or a deployment slot.", - "description": "Delete a deployment by its ID for an app, or a deployment slot.", - "operationId": "WebApps_DeleteDeploymentSlot", + "summary": "Invoke the MSDeploy web app extension.", + "description": "Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateMSDeployOperationSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9574,23 +10474,25 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { - "name": "id", + "name": "slot", "in": "path", - "description": "Deployment ID.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, { - "name": "slot", - "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/MSDeploy" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -9600,23 +10502,27 @@ } ], "responses": { - "200": { - "description": "Successfully deleted deployment." + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } }, - "204": { - "description": "Deployment does not exist." + "409": { + "description": "Another deployment is in progress." } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}/log": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy/log": { "get": { "tags": [ "WebApps" ], - "summary": "List deployment log for specific deployment for an app, or a deployment slot.", - "description": "List deployment log for specific deployment for an app, or a deployment slot.", - "operationId": "WebApps_ListDeploymentLogSlot", + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployLogSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9624,21 +10530,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", - "required": true, - "type": "string" - }, - { - "name": "id", - "in": "path", - "description": "The ID of a specific deployment. This is the value of the name property in the JSON response from \"GET /api/sites/{siteName}/deployments\".", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -9651,28 +10550,25 @@ ], "responses": { "200": { - "description": "OK", + "description": "MSDeploy log returned.", "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/MSDeployLog" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "MSDeploy log not found." } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/discoverbackup": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions": { + "get": { "tags": [ "WebApps" ], - "summary": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", - "description": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", - "operationId": "WebApps_DiscoverBackupSlot", + "summary": "List the functions for a web site, or a deployment slot.", + "description": "List the functions for a web site, or a deployment slot.", + "operationId": "WebApps_ListInstanceFunctionsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9680,23 +10576,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, - { - "name": "request", - "in": "body", - "description": "A RestoreRequest object that includes Azure storage URL and blog name for discovery of backup.", - "required": true, - "schema": { - "$ref": "#/definitions/RestoreRequest" - } - }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will perform discovery for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -9709,28 +10596,28 @@ ], "responses": { "200": { - "description": "OK", + "description": "Function information returned.", "schema": { - "$ref": "#/definitions/RestoreRequest" + "$ref": "#/definitions/FunctionEnvelopeCollection" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Function with an ID of {functionName} is not running." } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/admin/token": { "get": { "tags": [ "WebApps" ], - "summary": "Lists ownership identifiers for domain associated with web app.", - "description": "Lists ownership identifiers for domain associated with web app.", - "operationId": "WebApps_ListDomainOwnershipIdentifiersSlot", + "summary": "Fetch a short lived token that can be exchanged for a master key.", + "description": "Fetch a short lived token that can be exchanged for a master key.", + "operationId": "WebApps_GetFunctionsAdminTokenSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9738,14 +10625,14 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Name of web app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "description": "Name of web app slot. If not specified then will default to production slot.", "required": true, "type": "string" }, @@ -9760,7 +10647,7 @@ "200": { "description": "OK", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + "type": "string" } }, "default": { @@ -9769,20 +10656,17 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}": { "get": { "tags": [ "WebApps" ], - "summary": "Get domain ownership identifier for web app.", - "description": "Get domain ownership identifier for web app.", - "operationId": "WebApps_GetDomainOwnershipIdentifierSlot", + "summary": "Get function information by its ID for web site, or a deployment slot.", + "description": "Get function information by its ID for web site, or a deployment slot.", + "operationId": "WebApps_GetInstanceFunctionSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9790,21 +10674,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "domainOwnershipIdentifierName", + "name": "functionName", "in": "path", - "description": "Name of domain ownership identifier.", + "description": "Function name.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -9817,16 +10701,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Function information returned.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Identifier" + "$ref": "#/definitions/FunctionEnvelope" } }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "404": { + "description": "Function with a name of {functionName} does not exist." } } }, @@ -9834,9 +10715,9 @@ "tags": [ "WebApps" ], - "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", - "description": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", - "operationId": "WebApps_CreateOrUpdateDomainOwnershipIdentifierSlot", + "summary": "Create function for web site, or a deployment slot.", + "description": "Create function for web site, or a deployment slot.", + "operationId": "WebApps_CreateInstanceFunctionSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9844,33 +10725,33 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "domainOwnershipIdentifierName", + "name": "functionName", "in": "path", - "description": "Name of domain ownership identifier.", + "description": "Function name.", "required": true, "type": "string" }, - { - "name": "domainOwnershipIdentifier", - "in": "body", - "description": "A JSON representation of the domain ownership properties.", - "required": true, - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Identifier" - } - }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, + { + "name": "function_envelope", + "in": "body", + "description": "Function details.", + "required": true, + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -9879,10 +10760,10 @@ } ], "responses": { - "200": { - "description": "OK", + "201": { + "description": "Function created.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Identifier" + "$ref": "#/definitions/FunctionEnvelope" } }, "default": { @@ -9891,15 +10772,16 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - } + }, + "x-ms-long-running-operation": true }, "delete": { "tags": [ "WebApps" ], - "summary": "Deletes a domain ownership identifier for a web app.", - "description": "Deletes a domain ownership identifier for a web app.", - "operationId": "WebApps_DeleteDomainOwnershipIdentifierSlot", + "summary": "Delete a function for web site, or a deployment slot.", + "description": "Delete a function for web site, or a deployment slot.", + "operationId": "WebApps_DeleteInstanceFunctionSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9907,21 +10789,21 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "domainOwnershipIdentifierName", + "name": "functionName", "in": "path", - "description": "Name of domain ownership identifier.", + "description": "Function name.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -9933,21 +10815,23 @@ } ], "responses": { - "200": { - "description": "Successfully deleted domain ownership identifier." - }, "204": { - "description": "Domain ownership identifier does not exist." + "description": "Function deleted." + }, + "404": { + "description": "Function does not exist." } } - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/keys/{keyName}": { + "put": { "tags": [ "WebApps" ], - "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", - "description": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", - "operationId": "WebApps_UpdateDomainOwnershipIdentifierSlot", + "summary": "Add or update a function secret.", + "description": "Add or update a function secret.", + "operationId": "WebApps_CreateOrUpdateFunctionSecretSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -9955,33 +10839,40 @@ { "name": "name", "in": "path", - "description": "Name of the app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "domainOwnershipIdentifierName", + "name": "functionName", "in": "path", - "description": "Name of domain ownership identifier.", + "description": "The name of the function.", "required": true, "type": "string" }, { - "name": "domainOwnershipIdentifier", - "in": "body", - "description": "A JSON representation of the domain ownership properties.", + "name": "keyName", + "in": "path", + "description": "The name of the key.", "required": true, - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Identifier" - } + "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -9990,10 +10881,16 @@ } ], "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, "200": { - "description": "OK", + "description": "Key was updated.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Identifier" + "$ref": "#/definitions/KeyInfo" } }, "default": { @@ -10003,16 +10900,14 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy": { - "get": { + }, + "delete": { "tags": [ "WebApps" ], - "summary": "Get the status of the last MSDeploy operation.", - "description": "Get the status of the last MSDeploy operation.", - "operationId": "WebApps_GetMSDeployStatusSlot", + "summary": "Delete a function secret.", + "description": "Delete a function secret.", + "operationId": "WebApps_DeleteFunctionSecretSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10020,14 +10915,28 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -10039,27 +10948,23 @@ } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MSDeployStatus" - } + "404": { + "description": "Key was not found." }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" - } + "204": { + "description": "Key was deleted." } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listkeys": { + "post": { "tags": [ "WebApps" ], - "summary": "Invoke the MSDeploy web app extension.", - "description": "Invoke the MSDeploy web app extension.", - "operationId": "WebApps_CreateMSDeployOperationSlot", + "summary": "Get function keys for a function in a web site, or a deployment slot.", + "description": "Get function keys for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionKeysSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10067,25 +10972,23 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", "required": true, "type": "string" }, { - "name": "slot", + "name": "functionName", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Function name.", "required": true, "type": "string" }, { - "name": "MSDeploy", - "in": "body", - "description": "Details of MSDeploy operation", + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", "required": true, - "schema": { - "$ref": "#/definitions/MSDeploy" - } + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -10095,27 +10998,29 @@ } ], "responses": { - "201": { - "description": "Deployment is scheduled.", + "200": { + "description": "Function keys returned.", "schema": { - "$ref": "#/definitions/MSDeployStatus" + "$ref": "#/definitions/StringDictionary" } }, - "409": { - "description": "Another deployment is in progress." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-long-running-operation": true + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy/log": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { + "post": { "tags": [ "WebApps" ], - "summary": "Get the MSDeploy Log for the last MSDeploy operation.", - "description": "Get the MSDeploy Log for the last MSDeploy operation.", - "operationId": "WebApps_GetMSDeployLogSlot", + "summary": "Get function secrets for a function in a web site, or a deployment slot.", + "description": "Get function secrets for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionSecretsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10123,14 +11028,21 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -10143,25 +11055,28 @@ ], "responses": { "200": { - "description": "MSDeploy log returned.", + "description": "Function secrets returned.", "schema": { - "$ref": "#/definitions/MSDeployLog" + "$ref": "#/definitions/FunctionSecrets" } }, - "404": { - "description": "MSDeploy log not found." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/listkeys": { + "post": { "tags": [ "WebApps" ], - "summary": "List the functions for a web site, or a deployment slot.", - "description": "List the functions for a web site, or a deployment slot.", - "operationId": "WebApps_ListInstanceFunctionsSlot", + "summary": "Get host secrets for a function app.", + "description": "Get host secrets for a function app.", + "operationId": "WebApps_ListHostKeysSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10176,7 +11091,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -10189,28 +11104,28 @@ ], "responses": { "200": { - "description": "Function information returned.", + "description": "Host secrets returned.", "schema": { - "$ref": "#/definitions/FunctionEnvelopeCollection" + "$ref": "#/definitions/HostKeys" } }, - "404": { - "description": "Function with an ID of {functionName} is not running." + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/admin/token": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/listsyncstatus": { + "post": { "tags": [ "WebApps" ], - "summary": "Fetch a short lived token that can be exchanged for a master key.", - "description": "Fetch a short lived token that can be exchanged for a master key.", - "operationId": "WebApps_GetFunctionsAdminTokenSlot", + "summary": "This is to allow calling via powershell and ARM template.", + "description": "This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncStatusSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10218,14 +11133,14 @@ { "name": "name", "in": "path", - "description": "Name of web app.", + "description": "Name of the app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of web app slot. If not specified then will default to production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -10237,11 +11152,8 @@ } ], "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } + "204": { + "description": "No Content" }, "default": { "description": "App Service error response.", @@ -10252,14 +11164,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/sync": { + "post": { "tags": [ "WebApps" ], - "summary": "Get function information by its ID for web site, or a deployment slot.", - "description": "Get function information by its ID for web site, or a deployment slot.", - "operationId": "WebApps_GetInstanceFunctionSlot", + "summary": "Syncs function trigger metadata to the management database", + "description": "Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionsSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10267,21 +11179,14 @@ { "name": "name", "in": "path", - "description": "Site name.", - "required": true, - "type": "string" - }, - { - "name": "functionName", - "in": "path", - "description": "Function name.", + "description": "Name of the app.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -10293,24 +11198,26 @@ } ], "responses": { - "200": { - "description": "Function information returned.", + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", "schema": { - "$ref": "#/definitions/FunctionEnvelope" + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } - }, - "404": { - "description": "Function with an name of {functionName} is not running." } } - }, + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/{keyType}/{keyName}": { "put": { "tags": [ "WebApps" ], - "summary": "Create function for web site, or a deployment slot.", - "description": "Create function for web site, or a deployment slot.", - "operationId": "WebApps_CreateInstanceFunctionSlot", + "summary": "Add or update a host level secret.", + "description": "Add or update a host level secret.", + "operationId": "WebApps_CreateOrUpdateHostSecretSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10323,26 +11230,33 @@ "type": "string" }, { - "name": "functionName", + "name": "keyType", "in": "path", - "description": "Function name.", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, { - "name": "function_envelope", + "name": "key", "in": "body", - "description": "Function details.", + "description": "The key to create or update", "required": true, "schema": { - "$ref": "#/definitions/FunctionEnvelope" + "$ref": "#/definitions/KeyInfo" } }, { @@ -10354,9 +11268,15 @@ ], "responses": { "201": { - "description": "Function created.", + "description": "Key was created.", "schema": { - "$ref": "#/definitions/FunctionEnvelope" + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" } }, "default": { @@ -10365,16 +11285,15 @@ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" } } - }, - "x-ms-long-running-operation": true + } }, "delete": { "tags": [ "WebApps" ], - "summary": "Delete a function for web site, or a deployment slot.", - "description": "Delete a function for web site, or a deployment slot.", - "operationId": "WebApps_DeleteInstanceFunctionSlot", + "summary": "Delete a host level secret.", + "description": "Delete a host level secret.", + "operationId": "WebApps_DeleteHostSecretSlot", "parameters": [ { "$ref": "#/parameters/resourceGroupNameParameter" @@ -10387,66 +11306,23 @@ "type": "string" }, { - "name": "functionName", - "in": "path", - "description": "Function name.", - "required": true, - "type": "string" - }, - { - "name": "slot", - "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Function deleted." - }, - "404": { - "description": "Function does not exist." - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { - "post": { - "tags": [ - "WebApps" - ], - "summary": "Get function secrets for a function in a web site, or a deployment slot.", - "description": "Get function secrets for a function in a web site, or a deployment slot.", - "operationId": "WebApps_ListFunctionSecretsSlot", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "name": "name", + "name": "keyType", "in": "path", - "description": "Site name.", + "description": "The type of host key.", "required": true, "type": "string" }, { - "name": "functionName", + "name": "keyName", "in": "path", - "description": "Function name.", + "description": "The name of the key.", "required": true, "type": "string" }, { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -10458,11 +11334,11 @@ } ], "responses": { - "200": { - "description": "Function secrets returned.", - "schema": { - "$ref": "#/definitions/FunctionSecrets" - } + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." }, "default": { "description": "App Service error response.", @@ -12125,7 +13001,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -15477,8 +16353,8 @@ "tags": [ "WebApps" ], - "summary": "Syncs function trigger metadata to the scale controller", - "description": "Syncs function trigger metadata to the scale controller", + "summary": "Syncs function trigger metadata to the management database", + "description": "Syncs function trigger metadata to the management database", "operationId": "WebApps_SyncFunctionTriggersSlot", "parameters": [ { @@ -15494,7 +16370,7 @@ { "name": "slot", "in": "path", - "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "description": "Name of the deployment slot.", "required": true, "type": "string" }, @@ -17109,8 +17985,8 @@ "tags": [ "WebApps" ], - "summary": "Syncs function trigger metadata to the scale controller", - "description": "Syncs function trigger metadata to the scale controller", + "summary": "Syncs function trigger metadata to the management database", + "description": "Syncs function trigger metadata to the management database", "operationId": "WebApps_SyncFunctionTriggers", "parameters": [ { @@ -18817,7 +19693,7 @@ } }, "FunctionEnvelope": { - "description": "Web Job Information.", + "description": "Function information.", "type": "object", "allOf": [ { @@ -18844,6 +19720,10 @@ "description": "Config URI.", "type": "string" }, + "test_data_href": { + "description": "Test data URI.", + "type": "string" + }, "secrets_file_href": { "description": "Secrets file URI.", "type": "string" @@ -18866,6 +19746,18 @@ "test_data": { "description": "Test data used when testing via the Azure Portal.", "type": "string" + }, + "invoke_url_template": { + "description": "The invocation URL", + "type": "string" + }, + "language": { + "description": "The function language", + "type": "string" + }, + "isDisabled": { + "description": "Value indicating whether the function is disabled", + "type": "boolean" } }, "x-ms-client-flatten": true @@ -18918,6 +19810,30 @@ } } }, + "HostKeys": { + "description": "Functions host level keys.", + "type": "object", + "properties": { + "masterKey": { + "description": "Secret key.", + "type": "string" + }, + "functionKeys": { + "description": "Host level function keys.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemKeys": { + "description": "System keys.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, "HostNameBinding": { "description": "A hostname binding object.", "type": "object", @@ -19072,6 +19988,20 @@ } } }, + "KeyInfo": { + "description": "Function key info.", + "type": "object", + "properties": { + "name": { + "description": "Key name", + "type": "string" + }, + "value": { + "description": "Key value", + "type": "string" + } + } + }, "MSDeploy": { "description": "MSDeploy ARM PUT information", "type": "object", @@ -20925,7 +21855,7 @@ "items": { "$ref": "./CommonDefinitions.json#/definitions/GeoDistribution" } - } + } }, "x-ms-client-flatten": true }, @@ -21686,4 +22616,4 @@ ] } ] -} +} \ No newline at end of file From 1efb1b652c934996391ee06323b8bcbd4c10737e Mon Sep 17 00:00:00 2001 From: parisa-naeimi <38113090+parisa-naeimi@users.noreply.github.com> Date: Thu, 17 Oct 2019 22:47:51 -0700 Subject: [PATCH 21/54] CostManagement RP- Introducing API Version 2019-10-01 plus adding Modern Commerce Account Scopes to Query and Dimension APIs. (#7491) * Adds base for updating Microsoft.CostManagement from version stable/2019-09-01 to version 2019-10-01 * Updates readme * Updates API version in new specs and examples * Updated Query and Dimension API to support GTM Scopes plus examples. Fixed an existing issue in Query API by removing value * Fixed a small issue * Fixed typo * Removing unused example * removed extra line * Added new item for Go Package * removed nextlink * Fixed some minor issues * Fixed some minor issues and also added missing description for properties * addressed some minor issues * added legacy vs modern * fixed a small issue --- .../stable/2019-10-01/costmanagement.json | 1507 +++++++++++++++++ .../BillingAccountDimensionsList.json | 45 + ...lingAccountDimensionsListExpandAndTop.json | 59 + ...illingAccountDimensionsListWithFilter.json | 40 + .../examples/BillingAccountQuery.json | 107 ++ .../examples/BillingAccountQueryGrouping.json | 69 + .../examples/DepartmentDimensionsList.json | 46 + .../DepartmentDimensionsListExpandAndTop.json | 60 + .../DepartmentDimensionsListWithFilter.json | 41 + .../2019-10-01/examples/DepartmentQuery.json | 108 ++ .../examples/DepartmentQueryGrouping.json | 70 + .../EnrollmentAccountDimensionsList.json | 46 + ...mentAccountDimensionsListExpandAndTop.json | 60 + ...llmentAccountDimensionsListWithFilter.json | 41 + .../examples/EnrollmentAccountQuery.json | 108 ++ .../EnrollmentAccountQueryGrouping.json | 82 + .../examples/ExportByBillingAccount.json | 87 + .../examples/ExportByDepartment.json | 88 + .../examples/ExportByEnrollmentAccount.json | 88 + .../examples/ExportByManagementGroup.json | 87 + .../examples/ExportByResourceGroup.json | 88 + .../examples/ExportBySubscription.json | 87 + .../ExportCreateOrUpdateByBillingAccount.json | 287 ++++ .../ExportCreateOrUpdateByDepartment.json | 288 ++++ ...portCreateOrUpdateByEnrollmentAccount.json | 288 ++++ ...ExportCreateOrUpdateByManagementGroup.json | 287 ++++ .../ExportCreateOrUpdateByResourceGroup.json | 288 ++++ .../ExportCreateOrUpdateBySubscription.json | 287 ++++ .../ExportDeleteByBillingAccount.json | 11 + .../examples/ExportDeleteByDepartment.json | 12 + .../ExportDeleteByEnrollmentAccount.json | 12 + .../ExportDeleteByManagementGroup.json | 11 + .../examples/ExportDeleteByResourceGroup.json | 12 + .../examples/ExportDeleteBySubscription.json | 11 + .../ExportExecutionByBillingAccount.json | 11 + .../examples/ExportExecutionByDepartment.json | 12 + .../ExportExecutionByEnrollmentAccount.json | 12 + .../ExportExecutionByManagementGroup.json | 11 + .../ExportExecutionByResourceGroup.json | 12 + .../ExportExecutionBySubscription.json | 11 + .../ExportExecutionListByBillingAccount.json | 198 +++ .../ExportExecutionListByDepartment.json | 199 +++ ...xportExecutionListByEnrollmentAccount.json | 199 +++ .../ExportExecutionListByManagementGroup.json | 198 +++ .../ExportExecutionListByResourceGroup.json | 199 +++ .../ExportExecutionListBySubscription.json | 198 +++ .../examples/ExportListByBillingAccount.json | 174 ++ .../examples/ExportListByDepartment.json | 175 ++ .../ExportListByEnrollmentAccount.json | 175 ++ .../examples/ExportListByManagementGroup.json | 174 ++ .../examples/ExportListByResourceGroup.json | 175 ++ .../examples/ExportListBySubscription.json | 174 ++ .../MCABillingAccountDimensionsList.json | 45 + ...lingAccountDimensionsListExpandAndTop.json | 59 + ...illingAccountDimensionsListWithFilter.json | 40 + .../examples/MCABillingAccountQuery.json | 107 ++ .../MCABillingAccountQueryGrouping.json | 69 + .../MCABillingProfileDimensionsList.json | 46 + ...lingProfileDimensionsListExpandAndTop.json | 60 + ...illingProfileDimensionsListWithFilter.json | 41 + .../examples/MCABillingProfileQuery.json | 108 ++ .../MCABillingProfileQueryGrouping.json | 70 + .../examples/MCACustomerDimensionsList.json | 46 + ...MCACustomerDimensionsListExpandAndTop.json | 60 + .../MCACustomerDimensionsListWithFilter.json | 41 + .../2019-10-01/examples/MCACustomerQuery.json | 108 ++ .../examples/MCACustomerQueryGrouping.json | 70 + .../MCAInvoiceSectionDimensionsList.json | 47 + ...oiceSectionDimensionsListExpandAndTop.json | 61 + ...nvoiceSectionDimensionsListWithFilter.json | 42 + .../examples/MCAInvoiceSectionQuery.json | 109 ++ .../MCAInvoiceSectionQueryGrouping.json | 71 + .../ManagementGroupDimensionsList.json | 45 + ...gementGroupDimensionsListExpandAndTop.json | 59 + ...nagementGroupDimensionsListWithFilter.json | 40 + .../examples/ManagementGroupQuery.json | 107 ++ .../ManagementGroupQueryGrouping.json | 82 + .../examples/ResourceGroupDimensionsList.json | 56 + .../examples/ResourceGroupQuery.json | 96 ++ .../examples/ResourceGroupQueryGrouping.json | 77 + .../examples/SubscriptionDimensionsList.json | 58 + .../examples/SubscriptionQuery.json | 113 ++ .../examples/SubscriptionQueryGrouping.json | 79 + .../resource-manager/readme.go.md | 9 + .../resource-manager/readme.md | 20 +- 85 files changed, 9250 insertions(+), 6 deletions(-) create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByBillingAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByDepartment.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByEnrollmentAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByManagementGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportBySubscription.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByBillingAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByDepartment.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByManagementGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateBySubscription.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByBillingAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByDepartment.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByEnrollmentAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByManagementGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteBySubscription.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByBillingAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByDepartment.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByEnrollmentAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByManagementGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionBySubscription.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByBillingAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByDepartment.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByEnrollmentAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByManagementGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListBySubscription.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByBillingAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByDepartment.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByEnrollmentAccount.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByManagementGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListBySubscription.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListExpandAndTop.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListWithFilter.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQueryGrouping.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionDimensionsList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQueryGrouping.json diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json new file mode 100644 index 000000000000..72b1fe659ebf --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json @@ -0,0 +1,1507 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-10-01", + "title": "CostManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.CostManagement/dimensions": { + "get": { + "tags": [ + "Dimensions" + ], + "x-ms-odata": "#/definitions/Dimension", + "operationId": "Dimensions_List", + "description": "Lists the dimensions by the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionDimensionsList-Legacy": { + "$ref": "./examples/SubscriptionDimensionsList.json" + }, + "ResourceGroupDimensionsList-Legacy": { + "$ref": "./examples/ResourceGroupDimensionsList.json" + }, + "ManagementGroupDimensionsList-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsList.json" + }, + "ManagementGroupDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsListExpandAndTop.json" + }, + "ManagementGroupDimensionsListWithFilter-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsListWithFilter.json" + }, + "DepartmentDimensionsList-Legacy": { + "$ref": "./examples/DepartmentDimensionsList.json" + }, + "DepartmentDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/DepartmentDimensionsListExpandAndTop.json" + }, + "DepartmentDimensionsListWithFilter-Legacy": { + "$ref": "./examples/DepartmentDimensionsListWithFilter.json" + }, + "EnrollmentAccountDimensionsList-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsList.json" + }, + "EnrollmentAccountDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsListExpandAndTop.json" + }, + "EnrollmentAccountDimensionsListWithFilter-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsListWithFilter.json" + }, + "BillingAccountDimensionsList-Legacy": { + "$ref": "./examples/BillingAccountDimensionsList.json" + }, + "BillingAccountDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/BillingAccountDimensionsListExpandAndTop.json" + }, + "BillingAccountDimensionsListWithFilter-Legacy": { + "$ref": "./examples/BillingAccountDimensionsListWithFilter.json" + }, + "BillingAccountDimensionsList-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsList.json" + }, + "BillingAccountDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsListExpandAndTop.json" + }, + "BillingAccountDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsListWithFilter.json" + }, + "BillingProfileDimensionsList-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsList.json" + }, + "BillingProfileDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsListExpandAndTop.json" + }, + "BillingProfileDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsListWithFilter.json" + }, + "InvoiceSectionDimensionsList-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsList.json" + }, + "InvoiceSectionDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsListExpandAndTop.json" + }, + "InvoiceSectionDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsListWithFilter.json" + }, + "CustomerDimensionsList-Modern": { + "$ref": "./examples/MCACustomerDimensionsList.json" + }, + "CustomerDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCACustomerDimensionsListExpandAndTop.json" + }, + "CustomerDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCACustomerDimensionsListWithFilter.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeDimensionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter dimensions by properties/category, properties/usageStart, properties/usageEnd. Supported operators are 'eq','lt', 'gt', 'le', 'ge'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/data within a dimension category. By default, data is not included when listing dimensions.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N dimension data.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DimensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/query": { + "post": { + "tags": [ + "Query" + ], + "operationId": "Query_Usage", + "description": "Query the usage data for scope defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionQuery-Legacy": { + "$ref": "./examples/SubscriptionQuery.json" + }, + "SubscriptionQueryGrouping-Legacy": { + "$ref": "./examples/SubscriptionQueryGrouping.json" + }, + "ResourceGroupQuery-Legacy": { + "$ref": "./examples/ResourceGroupQuery.json" + }, + "ResourceGroupQueryGrouping-Legacy": { + "$ref": "./examples/ResourceGroupQueryGrouping.json" + }, + "BillingAccountQuery-Legacy": { + "$ref": "./examples/BillingAccountQuery.json" + }, + "BillingAccountQueryGrouping-Legacy": { + "$ref": "./examples/BillingAccountQueryGrouping.json" + }, + "EnrollmentAccountQuery-Legacy": { + "$ref": "./examples/EnrollmentAccountQuery.json" + }, + "EnrollmentAccountQueryGrouping-Legacy": { + "$ref": "./examples/EnrollmentAccountQueryGrouping.json" + }, + "DepartmentQuery-Legacy": { + "$ref": "./examples/DepartmentQuery.json" + }, + "DepartmentQueryGrouping-Legacy": { + "$ref": "./examples/DepartmentQueryGrouping.json" + }, + "ManagementGroupQuery-Legacy": { + "$ref": "./examples/ManagementGroupQuery.json" + }, + "ManagementGroupQueryGrouping-Legacy": { + "$ref": "./examples/ManagementGroupQueryGrouping.json" + }, + "BillingAccountQuery-Modern": { + "$ref": "./examples/MCABillingAccountQuery.json" + }, + "BillingAccountQueryGrouping-Modern": { + "$ref": "./examples/MCABillingAccountQueryGrouping.json" + }, + "BillingProfileQuery-Modern": { + "$ref": "./examples/MCABillingProfileQuery.json" + }, + "BillingProfileQueryGrouping-Modern": { + "$ref": "./examples/MCABillingProfileQueryGrouping.json" + }, + "InvoiceSectionQuery-Modern": { + "$ref": "./examples/MCAInvoiceSectionQuery.json" + }, + "InvoiceSectionQueryGrouping-Modern": { + "$ref": "./examples/MCAInvoiceSectionQueryGrouping.json" + }, + "CustomerQuery-Modern": { + "$ref": "./examples/MCACustomerQuery.json" + }, + "CustomerQueryGrouping-Modern": { + "$ref": "./examples/MCACustomerQueryGrouping.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Query Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_List", + "description": "The operation to list all exports at the given scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExportList": { + "$ref": "./examples/ExportListBySubscription.json" + }, + "ResourceGroupExportList": { + "$ref": "./examples/ExportListByResourceGroup.json" + }, + "BillingAccountExportList": { + "$ref": "./examples/ExportListByBillingAccount.json" + }, + "DepartmentExportList": { + "$ref": "./examples/ExportListByDepartment.json" + }, + "EnrollmentAccountExportList": { + "$ref": "./examples/ExportListByEnrollmentAccount.json" + }, + "ManagementGroupExportList": { + "$ref": "./examples/ExportListByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Get", + "description": "The operation to get the export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExport": { + "$ref": "./examples/ExportBySubscription.json" + }, + "ResourceGroupExport": { + "$ref": "./examples/ExportByResourceGroup.json" + }, + "BillingAccountExport": { + "$ref": "./examples/ExportByBillingAccount.json" + }, + "DepartmentExport": { + "$ref": "./examples/ExportByDepartment.json" + }, + "EnrollmentAccountExport": { + "$ref": "./examples/ExportByEnrollmentAccount.json" + }, + "ManagementGroupExport": { + "$ref": "./examples/ExportByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Exports" + ], + "operationId": "Exports_CreateOrUpdate", + "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" + }, + "ResourceGroupCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" + }, + "BillingAccountCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" + }, + "DepartmentCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" + }, + "EnrollmentAccountCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" + }, + "ManagementGroupCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Export" + }, + "description": "Parameters supplied to the CreateOrUpdate Export operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Delete", + "description": "The operation to delete a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionDeleteExport": { + "$ref": "./examples/ExportDeleteBySubscription.json" + }, + "ResourceGroupDeleteExport": { + "$ref": "./examples/ExportDeleteByResourceGroup.json" + }, + "BillingAccountDeleteExport": { + "$ref": "./examples/ExportDeleteByBillingAccount.json" + }, + "EnrollmentAccountDeleteExport": { + "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" + }, + "DepartmentDeleteExport": { + "$ref": "./examples/ExportDeleteByDepartment.json" + }, + "ManagementGroupDeleteExport": { + "$ref": "./examples/ExportDeleteByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { + "post": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Execute", + "description": "The operation to execute a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExecuteExport": { + "$ref": "./examples/ExportExecutionBySubscription.json" + }, + "ResourceGroupExecuteExport": { + "$ref": "./examples/ExportExecutionByResourceGroup.json" + }, + "BillingAccountExecuteExport": { + "$ref": "./examples/ExportExecutionByBillingAccount.json" + }, + "DepartmentExecuteExport": { + "$ref": "./examples/ExportExecutionByDepartment.json" + }, + "EnrollmentAccountExecuteExport": { + "$ref": "./examples/ExportExecutionByEnrollmentAccount.json" + }, + "ManagementGroupExecuteExport": { + "$ref": "./examples/ExportExecutionByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_GetExecutionHistory", + "description": "The operation to get the execution history of an export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListBySubscription.json" + }, + "ResourceGroupExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByResourceGroup.json" + }, + "BillingAccountExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByBillingAccount.json" + }, + "DepartmentExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByDepartment.json" + }, + "EnrollmentAccountExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByEnrollmentAccount.json" + }, + "ManagementGroupExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportExecutionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available cost management REST API operations.", + "parameters": [ + { + "$ref": "#/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": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "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." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "DimensionsListResult": { + "description": "Result of listing dimensions. It contains a list of available dimensions.", + "type": "object", + "properties": { + "value": { + "description": "The list of dimensions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Dimension" + } + } + } + }, + "Dimension": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DimensionProperties", + "title": "Dimension properties" + } + } + }, + "DimensionProperties": { + "type": "object", + "properties": { + "description": { + "description": "Dimension description.", + "type": "string", + "readOnly": true + }, + "filterEnabled": { + "description": "Filter enabled.", + "type": "boolean", + "readOnly": true + }, + "groupingEnabled": { + "description": "Grouping enabled.", + "type": "boolean", + "readOnly": true + }, + "data": { + "type": "array", + "items": { + "description": "Dimension data item.", + "type": "string", + "readOnly": true + } + }, + "total": { + "description": "Total number of data for the dimension.", + "format": "int32", + "type": "integer", + "readOnly": true + }, + "category": { + "description": "Dimension category.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "Usage start.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "usageEnd": { + "description": "Usage end.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "QueryResult": { + "description": "Result of query. It contains all columns listed under groupings and aggregation.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/QueryProperties", + "title": "Query properties" + } + } + }, + "QueryProperties": { + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string" + }, + "columns": { + "description": "Array of columns", + "type": "array", + "items": { + "$ref": "#/definitions/QueryColumn" + } + }, + "rows": { + "description": "Array of rows", + "type": "array", + "items": { + "type": "array", + "items": {} + } + } + } + }, + "QueryColumn": { + "type": "object", + "properties": { + "name": { + "description": "The name of column.", + "type": "string" + }, + "type": { + "description": "The type of column.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "Result of listing cost management operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of cost management operations supported by the Microsoft.CostManagement resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A Cost management REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.CostManagement.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: Dimensions, Query.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "QueryDefinition": { + "description": "The definition of a query.", + "properties": { + "type": { + "description": "The type of the query.", + "type": "string", + "enum": [ + "Usage" + ], + "x-ms-enum": { + "name": "ExportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the query. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "WeekToDate", + "MonthToDate", + "YearToDate", + "TheLastWeek", + "TheLastMonth", + "TheLastYear", + "Custom" + ], + "x-ms-enum": { + "name": "TimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the query.", + "$ref": "#/definitions/QueryTimePeriod" + }, + "dataset": { + "description": "Has definition for data in this query.", + "$ref": "#/definitions/QueryDataset" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "QueryTimePeriod": { + "description": "The start and end date for pulling data for the query.", + "properties": { + "from": { + "description": "The start date to pull data from.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date to pull data to.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "QueryDataset": { + "description": "The definition of data present in the query.", + "properties": { + "granularity": { + "description": "The granularity of rows in the query.", + "type": "string", + "enum": [ + "Daily", + "Hourly" + ], + "x-ms-enum": { + "name": "GranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "Has configuration information for the data in the export. The configuration will be ignored if aggregation and grouping are provided.", + "$ref": "#/definitions/QueryDatasetConfiguration" + }, + "aggregation": { + "type": "object", + "description": "Dictionary of aggregation expression to use in the query. The key of each item in the dictionary is the alias for the aggregated column. Query can have up to 2 aggregation clauses.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/QueryAggregation" + }, + "maxItems": 2 + }, + "grouping": { + "description": "Array of group by expression to use in the query. Query can have up to 2 group by clauses.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryGrouping" + }, + "maxItems": 2 + }, + "sorting": { + "type": "array", + "description": "Array of sorting by columns in query.", + "items": { + "$ref": "#/definitions/QuerySortingConfiguration" + } + }, + "filter": { + "type": "object", + "description": "Has filter expression to use in the query.", + "$ref": "#/definitions/QueryFilter" + } + } + }, + "QuerySortingConfiguration": { + "description": "The configuration for sorting in the query.", + "type": "object", + "properties": { + "querySortingDirection": { + "description": "The sorting direction", + "type": "string", + "enum": [ + "Ascending", + "Descending" + ], + "x-ms-enum": { + "name": "SortDirection", + "modelAsString": true + } + }, + "name": { + "description": "The name of the column to use in sorting.", + "type": "string" + } + } + }, + "QueryDatasetConfiguration": { + "description": "The configuration of dataset in the query.", + "properties": { + "columns": { + "description": "Array of column names to be included in the query. Any valid query column name is allowed. If not provided, then query includes all columns.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "QueryAggregation": { + "description": "The aggregation expression to be used in the query.", + "properties": { + "name": { + "description": "The name of the column to aggregate.", + "type": "string" + }, + "function": { + "description": "The name of the aggregation function to use.", + "type": "string", + "enum": [ + "Sum" + ], + "x-ms-enum": { + "name": "FunctionType", + "modelAsString": true + } + } + }, + "required": [ + "name", + "function" + ] + }, + "QueryGrouping": { + "description": "The group by expression to be used in the query.", + "properties": { + "type": { + "description": "Has type of the column to group.", + "$ref": "#/definitions/QueryColumnType" + }, + "name": { + "description": "The name of the column to group.", + "type": "string" + } + }, + "required": [ + "type", + "name" + ] + }, + "QueryFilter": { + "description": "The filter expression to be used in the export.", + "properties": { + "and": { + "description": "The logical \"AND\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryFilter" + }, + "minItems": 2 + }, + "or": { + "description": "The logical \"OR\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryFilter" + }, + "minItems": 2 + }, + "not": { + "description": "The logical \"NOT\" expression.", + "$ref": "#/definitions/QueryFilter" + }, + "dimension": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/QueryComparisonExpression" + }, + "tag": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/QueryComparisonExpression" + } + } + }, + "QueryColumnType": { + "description": "The type of the column in the export.", + "type": "string", + "enum": [ + "Tag", + "Dimension" + ], + "x-ms-enum": { + "name": "QueryColumnType", + "modelAsString": true + } + }, + "QueryComparisonExpression": { + "description": "The comparison expression to be used in the query.", + "properties": { + "name": { + "description": "The name of the column to use in comparison.", + "type": "string" + }, + "operator": { + "description": "The operator to use for comparison.", + "type": "string", + "enum": [ + "In" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "values": { + "description": "Array of values to use for comparison", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "ExportListResult": { + "description": "Result of listing exports. It contains a list of available exports in the scope provided.", + "properties": { + "value": { + "description": "The list of exports.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Export" + } + } + } + }, + "Export": { + "description": "A export resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportProperties", + "title": "Export properties" + } + } + }, + "ExportProperties": { + "description": "The properties of the export.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CommonExportProperties" + } + ], + "properties": { + "schedule": { + "description": "Has schedule information for the export.", + "$ref": "#/definitions/ExportSchedule" + } + } + }, + "CommonExportProperties": { + "description": "The common properties of the export.", + "properties": { + "format": { + "description": "The format of the export being delivered.", + "type": "string", + "enum": [ + "Csv" + ], + "x-ms-enum": { + "name": "FormatType", + "modelAsString": true + } + }, + "deliveryInfo": { + "description": "Has delivery information for the export.", + "$ref": "#/definitions/ExportDeliveryInfo" + }, + "definition": { + "description": "Has definition for the export.", + "$ref": "#/definitions/QueryDefinition" + } + }, + "required": [ + "deliveryInfo", + "definition" + ] + }, + "ExportSchedule": { + "description": "The schedule associated with a export.", + "properties": { + "status": { + "description": "The status of the schedule. Whether active or not. If inactive, the export's scheduled execution is paused.", + "type": "string", + "enum": [ + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "StatusType", + "modelAsString": true + } + }, + "recurrence": { + "description": "The schedule recurrence.", + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly", + "Annually" + ], + "x-ms-enum": { + "name": "RecurrenceType", + "modelAsString": true + } + }, + "recurrencePeriod": { + "description": "Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.", + "$ref": "#/definitions/ExportRecurrencePeriod" + } + }, + "required": [ + "recurrence" + ] + }, + "ExportDeliveryInfo": { + "description": "The delivery information associated with a export.", + "properties": { + "destination": { + "description": "Has destination for the export being delivered.", + "$ref": "#/definitions/ExportDeliveryDestination" + } + }, + "required": [ + "destination" + ] + }, + "ExportRecurrencePeriod": { + "description": "The start and end date for recurrence schedule.", + "properties": { + "from": { + "description": "The start date of recurrence.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date of recurrence.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from" + ] + }, + "ExportDeliveryDestination": { + "description": "The destination information for the delivery of the export.", + "properties": { + "resourceId": { + "description": "The resource id of the storage account where exports will be delivered.", + "type": "string" + }, + "container": { + "description": "The name of the container where exports will be uploaded.", + "type": "string" + }, + "rootFolderPath": { + "description": "The name of the directory where exports will be uploaded.", + "type": "string" + } + }, + "required": [ + "resourceId", + "container" + ] + }, + "ExportExecutionListResult": { + "description": "Result of listing exports execution history of a export by name", + "properties": { + "value": { + "description": "The list of export executions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ExportExecution" + } + } + } + }, + "ExportExecution": { + "description": "A export execution.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportExecutionProperties", + "title": "Export execution properties" + } + } + }, + "ExportExecutionProperties": { + "description": "The properties of the export execution.", + "properties": { + "executionType": { + "description": "The type of the export execution.", + "type": "string", + "enum": [ + "OnDemand", + "Scheduled" + ], + "x-ms-enum": { + "name": "ExecutionType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the export execution.", + "type": "string", + "enum": [ + "Queued", + "InProgress", + "Completed", + "Failed", + "Timeout", + "NewDataNotAvailable", + "DataNotAvailable" + ], + "x-ms-enum": { + "name": "ExecutionStatus", + "modelAsString": true + } + }, + "submittedBy": { + "description": "The identifier for the entity that executed the export. For OnDemand executions, it is the email id. For Scheduled executions, it is the constant value - System.", + "type": "string" + }, + "submittedTime": { + "description": "The time when export was queued to be executed.", + "type": "string", + "format": "date-time" + }, + "processingStartTime": { + "description": "The time when export was picked up to be executed.", + "type": "string", + "format": "date-time" + }, + "processingEndTime": { + "description": "The time when export execution finished.", + "type": "string", + "format": "date-time" + }, + "fileName": { + "description": "The name of the file export got written to.", + "type": "string" + }, + "runSettings": { + "$ref": "#/definitions/CommonExportProperties" + } + } + } + }, + "parameters": { + "scopeDimensionParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with dimension operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeQueryParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with query and export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2018-05-31." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Azure Resource Group Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingAccountIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "BillingAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "managementGroupIdParameter": { + "name": "managementGroupId", + "in": "path", + "description": "ManagementGroup ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "departmentIdParameter": { + "name": "departmentId", + "in": "path", + "description": "Department ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "enrollmentAccountIdParameter": { + "name": "enrollmentAccountId", + "in": "path", + "description": "Enrollment Account ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "exportNameParameter": { + "name": "exportName", + "in": "path", + "description": "Export Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsList.json new file mode 100644 index 000000000000..8f2f6f365cb4 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "scope": "providers/Microsoft.Billing/billingAccounts/100" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..b5521f5bfb68 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListExpandAndTop.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/100" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListWithFilter.json new file mode 100644 index 000000000000..572606fcd52a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountDimensionsListWithFilter.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/100" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/providers/microsoft.CostManagement/dimensions_ResourceId_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceId_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "http://management.azure.com/providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQuery.json new file mode 100644 index 000000000000..7afe642f1694 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQuery.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "70664866", + "scope": "providers/Microsoft.Billing/billingAccounts/70664866", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQueryGrouping.json new file mode 100644 index 000000000000..d437f36df920 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/BillingAccountQueryGrouping.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "70664866", + "scope": "providers/Microsoft.Billing/billingAccounts/70664866", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsList.json new file mode 100644 index 000000000000..4aa6dec17440 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/departments/123/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/departments/123/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..066a3bc16f25 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListExpandAndTop.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "departmentId": "123", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/departments/123/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/departments/123/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListWithFilter.json new file mode 100644 index 000000000000..f486f6e36fa2 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentDimensionsListWithFilter.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "departmentId": "123", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/departments/123/providers/microsoft.CostManagement/dimensions_ResourceId_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceId_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/100/departments/123/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQuery.json new file mode 100644 index 000000000000..cd2f56f2a845 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "70664866", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQueryGrouping.json new file mode 100644 index 000000000000..8b2e5bb2e05b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/DepartmentQueryGrouping.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "70664866", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsList.json new file mode 100644 index 000000000000..1c23de80068c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..98551eb4e953 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListExpandAndTop.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListWithFilter.json new file mode 100644 index 000000000000..7de518cb7769 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountDimensionsListWithFilter.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/microsoft.CostManagement/dimensions_ResourceId_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceId_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQuery.json new file mode 100644 index 000000000000..5010705d4751 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "70664866", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQueryGrouping.json new file mode 100644 index 000000000000..947477b35fff --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/EnrollmentAccountQueryGrouping.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "70664866", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ], + "sorting": [ + { + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByBillingAccount.json new file mode 100644 index 000000000000..b26f828bc357 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByBillingAccount.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-Id}/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "Contains", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByDepartment.json new file mode 100644 index 000000000000..d11ad0ad975b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByDepartment.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "Contains", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByEnrollmentAccount.json new file mode 100644 index 000000000000..b0bce06ad682 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByEnrollmentAccount.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "Contains", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByManagementGroup.json new file mode 100644 index 000000000000..1290e445f707 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByManagementGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "Contains", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByResourceGroup.json new file mode 100644 index 000000000000..e3beba0c8343 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "Contains", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportBySubscription.json new file mode 100644 index 000000000000..76e5cff1b6fe --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportBySubscription.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "Contains", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByBillingAccount.json new file mode 100644 index 000000000000..aea12dd18fa4 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByBillingAccount.json @@ -0,0 +1,287 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByDepartment.json new file mode 100644 index 000000000000..c16d6e3a1c28 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByDepartment.json @@ -0,0 +1,288 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json new file mode 100644 index 000000000000..f77e82a0de3f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json @@ -0,0 +1,288 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByManagementGroup.json new file mode 100644 index 000000000000..af6a151d25f7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByManagementGroup.json @@ -0,0 +1,287 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByResourceGroup.json new file mode 100644 index 000000000000..26f5b7029b70 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateByResourceGroup.json @@ -0,0 +1,288 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateBySubscription.json new file mode 100644 index 000000000000..a9a858270c77 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportCreateOrUpdateBySubscription.json @@ -0,0 +1,287 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + }, + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByBillingAccount.json new file mode 100644 index 000000000000..83c165df44b9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByDepartment.json new file mode 100644 index 000000000000..3ecc3e257800 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByEnrollmentAccount.json new file mode 100644 index 000000000000..8f65eb4822fe --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByManagementGroup.json new file mode 100644 index 000000000000..a1ed453f872c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByManagementGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByResourceGroup.json new file mode 100644 index 000000000000..81b2eda0c457 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteByResourceGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteBySubscription.json new file mode 100644 index 000000000000..82f1d8081dc5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportDeleteBySubscription.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByBillingAccount.json new file mode 100644 index 000000000000..83c165df44b9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByDepartment.json new file mode 100644 index 000000000000..3ecc3e257800 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByEnrollmentAccount.json new file mode 100644 index 000000000000..8f65eb4822fe --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByManagementGroup.json new file mode 100644 index 000000000000..a1ed453f872c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByManagementGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByResourceGroup.json new file mode 100644 index 000000000000..81b2eda0c457 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionByResourceGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionBySubscription.json new file mode 100644 index 000000000000..82f1d8081dc5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionBySubscription.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByBillingAccount.json new file mode 100644 index 000000000000..4fb134ee1f8c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByBillingAccount.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-id}/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-id}/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByDepartment.json new file mode 100644 index 000000000000..de165f29c5c3 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByDepartment.json @@ -0,0 +1,199 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByEnrollmentAccount.json new file mode 100644 index 000000000000..8128b50e68b2 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByEnrollmentAccount.json @@ -0,0 +1,199 @@ +{ + "parameters": { + "api-version": "2019-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByManagementGroup.json new file mode 100644 index 000000000000..1e9a65bf7174 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByManagementGroup.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledForTestExport/TestExportSchedule/20180729-20180804/TestExportSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledForTestExport/TestExportSchedule/20180729-20180804/TestExportSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByResourceGroup.json new file mode 100644 index 000000000000..e86174909e1b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListByResourceGroup.json @@ -0,0 +1,199 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListBySubscription.json new file mode 100644 index 000000000000..01e75509fc57 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportExecutionListBySubscription.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByBillingAccount.json new file mode 100644 index 000000000000..d49ef5d803db --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByBillingAccount.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "WeekToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByDepartment.json new file mode 100644 index 000000000000..7da006e80592 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByDepartment.json @@ -0,0 +1,175 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "WeekToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByEnrollmentAccount.json new file mode 100644 index 000000000000..399b2f759670 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByEnrollmentAccount.json @@ -0,0 +1,175 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "WeekToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByManagementGroup.json new file mode 100644 index 000000000000..a0d02300d2d9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByManagementGroup.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "WeekToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByResourceGroup.json new file mode 100644 index 000000000000..feacef7c6bf0 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListByResourceGroup.json @@ -0,0 +1,175 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "WeekToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListBySubscription.json new file mode 100644 index 000000000000..813bb6a84f32 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExportListBySubscription.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "Custom", + "timePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + }, + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "PreTaxCost" + ] + }, + "aggregation": { + "costSum": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "SubscriptionName" + } + ], + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2018-06-01T00:00:00Z", + "to": "2018-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "Usage", + "timeframe": "WeekToDate", + "dataset": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + }, + "aggregation": { + "usageSum": { + "name": "UsageQuantity", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Tag", + "name": "Environment" + } + ], + "filter": { + "and": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsList.json new file mode 100644 index 000000000000..accdaebf5212 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..81839ef51c4e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListExpandAndTop.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListWithFilter.json new file mode 100644 index 000000000000..ab76379cbce0 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountDimensionsListWithFilter.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/microsoft.CostManagement/dimensions_ResourceId_2019-10-01_2019-10-31", + "name": "dimensions_ResourceId_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "http://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQuery.json new file mode 100644 index 000000000000..86538a05da60 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQuery.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQueryGrouping.json new file mode 100644 index 000000000000..4de5de1a35f7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingAccountQueryGrouping.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsList.json new file mode 100644 index 000000000000..11d84a74f6c9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..2102cbb9407a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListExpandAndTop.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListWithFilter.json new file mode 100644 index 000000000000..118eda5d0cfd --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileDimensionsListWithFilter.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/microsoft.CostManagement/dimensions_ResourceId_2019-10-01_2019-10-31", + "name": "dimensions_ResourceId_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "http://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQuery.json new file mode 100644 index 000000000000..7c06b2384402 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQueryGrouping.json new file mode 100644 index 000000000000..c262bd0f5d47 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCABillingProfileQueryGrouping.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsList.json new file mode 100644 index 000000000000..0a63b2667392 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "customerId": "5678", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..738eb52bf1f8 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListExpandAndTop.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "customerId": "5678", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListWithFilter.json new file mode 100644 index 000000000000..dc9903eb348a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerDimensionsListWithFilter.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "customerId": "13579", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/microsoft.CostManagement/dimensions_ResourceId_2019-10-01_2019-10-31", + "name": "dimensions_ResourceId_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "http://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQuery.json new file mode 100644 index 000000000000..28e65f8fff6d --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "customerId": "5678", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQueryGrouping.json new file mode 100644 index 000000000000..c90d17bf1bce --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCACustomerQueryGrouping.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "customerId": "5678", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsList.json new file mode 100644 index 000000000000..381d346fa3ba --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..17dedb5444fc --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListExpandAndTop.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/microsoft.CostManagement/dimensions_ResourceGroup_2019-10-01_2019-10-31", + "name": "dimensions_ResourceGroup_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/microsoft.CostManagement/dimensions_ResourceType_2019-10-01_2019-10-31", + "name": "dimensions_ResourceType_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListWithFilter.json new file mode 100644 index 000000000000..9dc3219f73e3 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionDimensionsListWithFilter.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/microsoft.CostManagement/dimensions_ResourceId_2019-10-01_2019-10-31", + "name": "dimensions_ResourceId_2019-10-01_2019-10-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2019-10-01T00:00:00-07:00", + "usageEnd": "2019-10-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "http://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQuery.json new file mode 100644 index 000000000000..d11082ef2cba --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQuery.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQueryGrouping.json new file mode 100644 index 000000000000..fdd3555cef81 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/MCAInvoiceSectionQueryGrouping.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsList.json new file mode 100644 index 000000000000..46d654b664b9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "MyMgId", + "scope": "providers/Microsoft.Management/managementGroups/MyMgId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListExpandAndTop.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListExpandAndTop.json new file mode 100644 index 000000000000..616047e5e4bf --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListExpandAndTop.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "MyMgId", + "$expand": "properties/data", + "$top": 5, + "scope": "providers/Microsoft.Management/managementGroups/MyMgId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "thoroetrg01", + "default-notificationhubs-westus", + "jedikeyvaultrg", + "contosocodeflow8d4a", + "noobaa" + ], + "total": 377, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.automation/automationaccounts", + "microsoft.databricks/workspaces", + "microsoft.dbformysql/servers", + "microsoft.containerregistry/registries", + "microsoft.search/searchservices" + ], + "total": 37, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListWithFilter.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListWithFilter.json new file mode 100644 index 000000000000..de501d6cc1ee --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupDimensionsListWithFilter.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "MyMgId", + "$expand": "properties/data", + "$top": 5, + "$filter": "properties/category eq 'resourceId'", + "scope": "providers/Microsoft.Management/managementGroups/MyMgId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/microsoft.CostManagement/dimensions_ResourceId_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceId_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/urphealthaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/67e24f6b-1ec2-4c90-993a-dc2d25b00b6c/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-67e24f6b-1ec2-4c90-993a-dc2d25b00b6c-eus", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg-sql-ha/providers/microsoft.compute/virtualmachines/sql-4qqp1", + "/subscriptions/a98d6dc5-eb8f-46cf-8938-f1fb08f03706/resourcegroups/databricks-rg-testwsp-xijmsdubneexm/providers/microsoft.compute/disks/488cdb42bf74474a98075415be3f806c-containerrootvolume" + ], + "total": 1409, + "category": "ResourceId", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true, + "nextLink": "http://management.azure.com/providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Dimensions?$filter=properties/category eq 'resourceId'&$top=5&api-version=2019-10-01&$expand=properties/data&$skiptoken=AQAAAA%3D%3D" + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQuery.json new file mode 100644 index 000000000000..debdbdaf7942 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQuery.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "MyMgId", + "scope": "providers/Microsoft.Management/managementGroups/MyMgId", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQueryGrouping.json new file mode 100644 index 000000000000..93402f98f435 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ManagementGroupQueryGrouping.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "MyMgId", + "scope": "providers/Microsoft.Management/managementGroups/MyMgId", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ], + "sorting": [ + { + "name": "ResourceGroup", + "querySortingDirection": "Descending" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupDimensionsList.json new file mode 100644 index 000000000000..d0f789435863 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupDimensionsList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "system.orlando", + "$expand": "properties/data", + "$top": 5, + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/system.orlando" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/system.orlando/providers/microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.storage/storageaccounts" + ], + "total": 1, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/system.orlando/providers/microsoft.CostManagement/dimensions_ResourceId_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceId_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/authprod", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/systemevents", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/armadminprod", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/srphytenaccount", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/system.orlando/providers/microsoft.storage/storageaccounts/publicsystemportal" + ], + "total": 27, + "category": "ResourceId", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource Id", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQuery.json new file mode 100644 index 000000000000..af8a2d67d97f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQuery.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "55312978-ba1b-415c-9304-c4b9c43c0481", + "resourceGroupName": "ScreenSharingTest-peer", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/55312978-ba1b-415c-9304-c4b9c43c0481/resourcegroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/Query/9af9459d-441d-4055-9ed0-83d4c4a363fb", + "name": "9af9459d-441d-4055-9ed0-83d4c4a363fb", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "ScreenSharingTest-peer", + 20180417, + "USD" + ], + [ + 20.10333307059661, + "ScreenSharingTest-peer", + 20180418, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQueryGrouping.json new file mode 100644 index 000000000000..999a8ff3f8ff --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ResourceGroupQueryGrouping.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "ScreenSharingTest-peer", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceType" + } + ], + "sorting": [ + { + "name": "ResourceType", + "querySortingDirection": "Descending" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/Query/9af9459d-441d-4055-9ed0-83d4c4a363fb", + "name": "9af9459d-441d-4055-9ed0-83d4c4a363fb", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceType", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "Microsoft.SqlServer", + 20180417, + "USD" + ], + [ + 20.10333307059661, + "Microsoft.Compute", + 20180418, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionDimensionsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionDimensionsList.json new file mode 100644 index 000000000000..89e401409972 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionDimensionsList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "$top": 5, + "$expand": "properties/data", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceGroup_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "dcrg", + "rg", + "offlinegalleryrg", + "system.orlando.adminkeyvault", + "system.orlando.keyvault" + ], + "total": 68, + "category": "ResourceGroup", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource group", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/dimensions_ResourceType_2018-05-01_2018-05-31_5", + "name": "dimensions_ResourceType_2018-05-01_2018-05-31_5", + "type": "microsoft.CostManagement/dimensions", + "properties": { + "data": [ + "microsoft.storage/storageaccounts", + "microsoft.web.admin/role", + "microsoft.sql/servers", + "microsoft.compute/virtualmachines" + ], + "total": 4, + "category": "ResourceType", + "usageStart": "2018-05-01T00:00:00-07:00", + "usageEnd": "2018-05-31T00:00:00-07:00", + "description": "Resource type", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQuery.json new file mode 100644 index 000000000000..19e69ad58978 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQuery.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + }, + "sorting": [ + { + "name": "UsageDate", + "querySortingDirection": "Ascending" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/Query/00000000-0000-0000-0000-000000000000", + "name": "55312978-ba1b-415c-9304-cfd9c43c0481", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "ScreenSharingTest-peer", + 20180331, + "USD" + ], + [ + 218.68795741935486, + "Ict_StratAndPlan_GoldSprova_Prod", + 20180331, + "USD" + ], + [ + 0.14384913581657052, + "ssbciotelement01", + 20180401, + "USD" + ], + [ + 0.009865586851323632, + "ict_stratandplan_goldsprova_prod", + 20180429, + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQueryGrouping.json new file mode 100644 index 000000000000..ff8d76c8d233 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/SubscriptionQueryGrouping.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ], + "sorting": [ + { + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/Query/00000000-0000-0000-0000-000000000000", + "name": "55312978-ba1b-415c-9304-cfd9c43c0481", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 0.009865586851323632, + "Ict_StratAndPlan_GoldSprova_Prod_0", + "USD" + ], + [ + 218.68795741935486, + "Ict_StratAndPlan_GoldSprova_Prod_1", + "USD" + ], + [ + 2.10333307059661, + "ScreenSharingTest-peer1", + "USD" + ], + [ + 0.14384913581657052, + "Ssbciotelement01", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/readme.go.md b/specification/cost-management/resource-manager/readme.go.md index 65727348911d..4a31cbb06ecc 100644 --- a/specification/cost-management/resource-manager/readme.go.md +++ b/specification/cost-management/resource-manager/readme.go.md @@ -16,6 +16,7 @@ batch: - tag: package-2018-08-preview - tag: package-2019-01 - tag: package-preview-2019-03 + - tag: package-2019-10 ``` ### Tag: package-2018-05 and go @@ -49,3 +50,11 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-10' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-10-01/$(namespace) +``` diff --git a/specification/cost-management/resource-manager/readme.md b/specification/cost-management/resource-manager/readme.md index 0a94788ec63a..fffdde30e1c6 100644 --- a/specification/cost-management/resource-manager/readme.md +++ b/specification/cost-management/resource-manager/readme.md @@ -26,12 +26,21 @@ These are the global settings for the Cost Management API. ``` yaml openapi-type: arm -tag: package-preview-2019-04 +tag: package-2019-10 azure-validator: true ``` --- + +### Tag: package-2019-10 + +These settings apply only when `--tag=package-2019-10` is specified on the command line. + +```yaml $(tag) == 'package-2019-10' +input-file: + - Microsoft.CostManagement/stable/2019-10-01/costmanagement.json +``` ### Tag: package-2019-09 These settings apply only when `--tag=package-2019-09` is specified on the command line. @@ -45,10 +54,11 @@ input-file: These settings apply only when `--tag=package-preview-2019-04` is specified on the command line. -```yaml $(tag) == 'package-preview-2019-04' +``` yaml $(tag) == 'package-preview-2019-04' input-file: - Microsoft.CostManagement/preview/2019-04-01-preview/costmanagement.json ``` + ### Tag: package-2019-01 These settings apply only when `--tag=package-2019-01` is specified on the command line. @@ -310,8 +320,7 @@ regenerate-manager: true generate-interface: true ``` - -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -333,11 +342,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - From ad92120dcda648cf040df753f1639460cfd5ef78 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 18 Oct 2019 05:48:52 +0000 Subject: [PATCH 22/54] regenerated all-api-versions --- specification/cost-management/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/cost-management/resource-manager/readme.md b/specification/cost-management/resource-manager/readme.md index fffdde30e1c6..bf30e7dfed1a 100644 --- a/specification/cost-management/resource-manager/readme.md +++ b/specification/cost-management/resource-manager/readme.md @@ -332,6 +332,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json - $(this-folder)/Microsoft.CostManagement/stable/2019-09-01/costmanagement.json - $(this-folder)/Microsoft.CostManagement/preview/2019-04-01-preview/costmanagement.json - $(this-folder)/Microsoft.CostManagement/stable/2019-01-01/costmanagement.json From 7717107ff7aec003e43c9c5870c239f7bcd746ac Mon Sep 17 00:00:00 2001 From: parisa-naeimi <38113090+parisa-naeimi@users.noreply.github.com> Date: Thu, 17 Oct 2019 23:17:32 -0700 Subject: [PATCH 23/54] Consumption RP - Introducing API Version 2019-10-01 with support of new Credits, lots, Event APIs, and Modern scopes for Usage Details ,and Charges APIs. (#7459) * Adds base for updating Microsoft.Consumption from version stable/2019-06-01 to version 2019-10-01 * Updates readme * Updates API version in new specs and examples * Introducing new API Version 2019-10-01 with adding Credits, Lots, Events, Charges APIs and related examples * Removed extra bracket * Added missing bracket * Added missing definitions * Added missing CreditbalanceSummary * Fixed issues for startDate and endDate * Fixed a small issue in consumption.json * removed GTM scopes from usage Detail * fixed typo * Removed charges for GTM Scope and all related examples * Changed amount as object which includes amount plus currency * addressed some minor issues * Removed extra properties from credit summary * update credit summary definition * removed properties from creditbalancesummary * Fixed an issue * resolved couple of format issues * updated description bases on ARM Suggestion * Added support for GTM UsageDetail by introducing Kind * fixed a small issue * Adding Modern Scopes for Charges API with the kind support * removed extra examples * Updating Usage Detail for Modern * Fixed some typos * Updated charges examples * Added reservation recommendation, summary, details for Modern scopes plus supporting kind for recommendation * did some minor changes * made some minor changes --- .../stable/2019-10-01/consumption.json | 4648 +++++++++++++++++ .../AggregatedCostByManagementGroup.json | 47 + ...atedCostByManagementGroupFilterByDate.json | 48 + ...CostForBillingPeriodByManagementGroup.json | 40 + .../examples/BalancesByBillingAccount.json | 46 + ...ancesByBillingAccountForBillingPeriod.json | 47 + .../stable/2019-10-01/examples/Budget.json | 72 + .../2019-10-01/examples/BudgetsList.json | 160 + .../ChargesForBillingPeriodByDepartment.json | 30 + ...esForBillingPeriodByEnrollmentAccount.json | 30 + .../ChargesListByModernBillingAccount.json | 43 + ...BillingAccountGroupByBillingProfileId.json | 68 + ...ModernBillingAccountGroupByCustomerId.json | 73 + ...BillingAccountGroupByInvoiceSectionId.json | 71 + .../ChargesListByModernBillingProfile.json | 41 + ...BillingProfileGroupByInvoiceSectionId.json | 71 + ...tByModernBillingProfileInvoiceSection.json | 70 + .../examples/ChargesListByModernCustomer.json | 41 + .../ChargesListByModernInvoiceSectionId.json | 41 + ...ListForDepartmentFilterByStartEndDate.json | 30 + ...EnrollmentAccountFilterByStartEndDate.json | 29 + .../examples/CreateOrUpdateBudget.json | 185 + .../CreditSummaryByBillingProfile.json | 40 + .../2019-10-01/examples/DeleteBudget.json | 12 + .../examples/EventsListByBillingProfile.json | 141 + .../2019-10-01/examples/ForecastsList.json | 51 + .../examples/ForecastsListFilterByDates.json | 52 + .../examples/ForecastsListFilterByGrain.json | 52 + .../examples/LotsListByBillingProfile.json | 53 + .../MarketplacesByBillingAccountList.json | 49 + ...sByBillingAccountListForBillingPeriod.json | 51 + .../MarketplacesByDepartmentList.json | 51 + ...lacesByDepartment_ListByBillingPeriod.json | 51 + .../MarketplacesByEnrollmentAccountList.json | 51 + ...nrollmentAccounts_ListByBillingPeriod.json | 51 + .../MarketplacesByManagementGroupList.json | 85 + ...yManagementGroup_ListForBillingPeriod.json | 86 + .../2019-10-01/examples/MarketplacesList.json | 49 + .../MarketplacesListForBillingPeriod.json | 51 + .../2019-10-01/examples/PriceSheet.json | 30 + .../2019-10-01/examples/PriceSheetExpand.json | 40 + .../examples/PriceSheetForBillingPeriod.json | 31 + .../examples/ReservationDetails.json | 36 + .../ReservationDetailsByBillingAccountId.json | 33 + .../ReservationDetailsByBillingProfileId.json | 34 + .../ReservationDetailsWithReservationId.json | 38 + ...vationRecommendationsByBillingAccount.json | 81 + ...vationRecommendationsByBillingProfile.json | 99 + ...ervationRecommendationsBySubscription.json | 53 + ...rBySubscriptionForScopeLookBackPeriod.json | 74 + .../examples/ReservationSummariesDaily.json | 42 + ...ionSummariesDailyWithBillingAccountId.json | 33 + ...ionSummariesDailyWithBillingProfileId.json | 33 + ...vationSummariesDailyWithReservationId.json | 43 + .../examples/ReservationSummariesMonthly.json | 41 + ...nSummariesMonthlyWithBillingAccountId.json | 32 + ...nSummariesMonthlyWithBillingProfileId.json | 32 + ...tionSummariesMonthlyWithReservationId.json | 42 + ...ionTransactionsListByBillingAccountId.json | 69 + .../stable/2019-10-01/examples/Tags.json | 48 + .../examples/UsageDetailsExpand.json | 67 + .../2019-10-01/examples/UsageDetailsList.json | 57 + .../UsageDetailsListByBillingAccount.json | 56 + .../UsageDetailsListByDepartment.json | 56 + .../UsageDetailsListByEnrollmentAccount.json | 56 + .../UsageDetailsListByMCABillingAccount.json | 85 + .../UsageDetailsListByMCABillingProfile.json | 85 + .../UsageDetailsListByMCACustomer.json | 85 + .../UsageDetailsListByMCAInvoiceSection.json | 85 + .../UsageDetailsListByManagementGroup.json | 98 + .../UsageDetailsListByMetricActualCost.json | 57 + ...UsageDetailsListByMetricAmortizedCost.json | 58 + .../UsageDetailsListByMetricUsage.json | 57 + .../examples/UsageDetailsListFilterByTag.json | 56 + .../UsageDetailsListForBillingPeriod.json | 56 + ...sListForBillingPeriodByBillingAccount.json | 56 + ...tailsListForBillingPeriodByDepartment.json | 56 + ...stForBillingPeriodByEnrollmentAccount.json | 56 + ...ListForBillingPeriodByManagementGroup.json | 98 + .../consumption/resource-manager/readme.md | 13 +- 80 files changed, 9162 insertions(+), 2 deletions(-) create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroup.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroupFilterByDate.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccountForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Budget.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BudgetsList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByDepartment.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileInvoiceSection.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernCustomer.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernInvoiceSectionId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForDepartmentFilterByStartEndDate.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreateOrUpdateBudget.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/DeleteBudget.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByDates.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByGrain.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartmentList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccountList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroupList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesListForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheet.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetExpand.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsBySubscription.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthly.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithReservationId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Tags.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsExpand.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsList.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByBillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByDepartment.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByEnrollmentAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCACustomer.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCAInvoiceSection.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByManagementGroup.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricActualCost.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricAmortizedCost.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricUsage.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListFilterByTag.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByDepartment.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json new file mode 100644 index 000000000000..148bf0b5b0d2 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json @@ -0,0 +1,4648 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-10-01", + "title": "ConsumptionManagementClient", + "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Consumption/usageDetails": { + "get": { + "tags": [ + "UsageDetails" + ], + "operationId": "UsageDetails_List", + "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "UsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsList.json" + }, + "UsageDetailsListFilterByTag-Legacy": { + "$ref": "./examples/UsageDetailsListFilterByTag.json" + }, + "UsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriod.json" + }, + "UsageDetailsExpand-Legacy": { + "$ref": "./examples/UsageDetailsExpand.json" + }, + "UsageDetailsListByMetricActualCost-Legacy": { + "$ref": "./examples/UsageDetailsListByMetricActualCost.json" + }, + "UsageDetailsListByMetricAmortizedCost-Legacy": { + "$ref": "./examples/UsageDetailsListByMetricAmortizedCost.json" + }, + "UsageDetailsListByMetricUsage-Legacy": { + "$ref": "./examples/UsageDetailsListByMetricUsage.json" + }, + "BillingAccountUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByBillingAccount.json" + }, + "BillingAccountUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByBillingAccount.json" + }, + "DepartmentUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByDepartment.json" + }, + "DepartmentUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByDepartment.json" + }, + "EnrollmentAccountUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByEnrollmentAccount.json" + }, + "EnrollmentAccountUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json" + }, + "ManagementGroupUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByManagementGroup.json" + }, + "ManagementGroupUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByManagementGroup.json" + }, + "BillingAccountUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCABillingAccount.json" + }, + "BillingProfileUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCABillingProfile.json" + }, + "InvoiceSectionUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCAInvoiceSection.json" + }, + "CustomerUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCACustomer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeUsageDetailsParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/additionalInfo or properties/meterDetails within a list of usage details. By default, these fields are not included when listing usage details.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N usageDetails.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/metricParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsageDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/marketplaces": { + "get": { + "tags": [ + "Marketplaces" + ], + "x-ms-odata": "#/definitions/Marketplace", + "operationId": "Marketplaces_List", + "description": "Lists the marketplaces for a scope at the defined scope. Marketplaces are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "SubscriptionMarketplacesList": { + "$ref": "./examples/MarketplacesList.json" + }, + "SubscriptionMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesListForBillingPeriod.json" + }, + "BillingAccountMarketplacesList": { + "$ref": "./examples/MarketplacesByBillingAccountList.json" + }, + "BillingAccountMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByBillingAccountListForBillingPeriod.json" + }, + "DepartmentMarketplacesList": { + "$ref": "./examples/MarketplacesByDepartmentList.json" + }, + "DepartmentMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByDepartment_ListByBillingPeriod.json" + }, + "EnrollmentAccountMarketplacesList": { + "$ref": "./examples/MarketplacesByEnrollmentAccountList.json" + }, + "EnrollmentAccountMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json" + }, + "ManagementGroupMarketplacesList": { + "$ref": "./examples/MarketplacesByManagementGroupList.json" + }, + "ManagementGroupMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByManagementGroup_ListForBillingPeriod.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter marketplaces by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N marketplaces.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/scopeMarketplaceParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/MarketplacesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/budgets": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_List", + "description": "Lists all budgets for the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "BudgetsList": { + "$ref": "./examples/BudgetsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BudgetsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_Get", + "description": "Gets the budget for the scope by budget name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Budget": { + "$ref": "./examples/Budget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_CreateOrUpdate", + "description": "The operation to create or update a budget. Update operation requires latest eTag to be set in the request mandatorily. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "CreateOrUpdateBudget": { + "$ref": "./examples/CreateOrUpdateBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Budget" + }, + "description": "Parameters supplied to the Create Budget operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_Delete", + "description": "The operation to delete a budget.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "DeleteBudget": { + "$ref": "./examples/DeleteBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Consumption/tags": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_Get", + "description": "Get all available tag keys for the defined scope", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Tags_Get": { + "$ref": "./examples/Tags.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeTagsParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TagsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Consumption/charges": { + "get": { + "tags": [ + "Charges" + ], + "operationId": "Charges_List", + "description": "Lists the charges based for the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ChargesListForEnrollmentAccount-Legacy": { + "$ref": "./examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json" + }, + "ChangesForBillingPeriodByEnrollmentAccount-Legacy": { + "$ref": "./examples/ChargesForBillingPeriodByEnrollmentAccount.json" + }, + "ChargesListByDepartment-Legacy": { + "$ref": "./examples/ChargesListForDepartmentFilterByStartEndDate.json" + }, + "ChangesForBillingPeriodByDepartment-Legacy": { + "$ref": "./examples/ChargesForBillingPeriodByDepartment.json" + }, + "ChargesListByBillingAccount-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccount.json" + }, + "ChargesListByBillingAccountGroupByBillingProfileId-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json" + }, + "ChargesListByBillingAccountGroupByInvoiceSectionId-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json" + }, + "ChargesListByBillingAccountGroupByCustomerId-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccountGroupByCustomerId.json" + }, + "ChargesListByBillingProfile-Modern": { + "$ref": "./examples/ChargesListByModernBillingProfile.json" + }, + "ChargesListByBillingProfileInvoiceSection-Modern": { + "$ref": "./examples/ChargesListByModernBillingProfileInvoiceSection.json" + }, + "ChargesListByBillingProfileGroupByInvoiceSectionId-Modern": { + "$ref": "./examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json" + }, + "ChargesListByInvoiceSectionId-Modern": { + "$ref": "./examples/ChargesListByModernInvoiceSectionId.json" + }, + "ChargesListByCustomer-Modern": { + "$ref": "./examples/ChargesListByModernCustomer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeChargesParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "startDate", + "in": "query", + "description": "Start date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "endDate", + "in": "query", + "description": "End date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "$filter", + "description": "May be used to filter charges by properties/usageEnd (Utc time), properties/usageStart (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$apply", + "description": "May be used to group charges for billingAccount scope by properties/billingProfileId, properties/invoiceSectionId, properties/customerId (specific for Partner Led), or for billingProfile scope by properties/invoiceSectionId.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ChargesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances": { + "get": { + "tags": [ + "Balances" + ], + "operationId": "Balances_GetByBillingAccount", + "description": "Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Balances": { + "$ref": "./examples/BalancesByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Balance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances": { + "get": { + "tags": [ + "Balances" + ], + "operationId": "Balances_GetForBillingPeriodByBillingAccount", + "description": "Gets the balances for a scope by billing period and billingAccountId. Balances are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Balances": { + "$ref": "./examples/BalancesByBillingAccountForBillingPeriod.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Balance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservationSummaries" + ], + "operationId": "ReservationsSummaries_ListByReservationOrder", + "description": "Lists the reservations summaries for daily or monthly grain.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationSummariesDaily": { + "$ref": "./examples/ReservationSummariesDaily.json" + }, + "ReservationSummariesMonthly": { + "$ref": "./examples/ReservationSummariesMonthly.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "$ref": "#/parameters/grainParameter" + }, + { + "name": "$filter", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationSummariesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservationSummaries" + ], + "operationId": "ReservationsSummaries_ListByReservationOrderAndReservation", + "description": "Lists the reservations summaries for daily or monthly grain.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationSummariesDailyWithReservationId": { + "$ref": "./examples/ReservationSummariesDailyWithReservationId.json" + }, + "ReservationSummariesMonthlyWithReservationId": { + "$ref": "./examples/ReservationSummariesMonthlyWithReservationId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "$ref": "#/parameters/reservationIdParameter" + }, + { + "$ref": "#/parameters/grainParameter" + }, + { + "name": "$filter", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationSummariesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservationSummaries" + ], + "operationId": "ReservationsSummaries_List", + "description": "Lists the reservations summaries for the defined scope daily or monthly grain.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationSummariesDailyWithBillingAccountId": { + "$ref": "./examples/ReservationSummariesDailyWithBillingAccountId.json" + }, + "ReservationSummariesMonthlyWithBillingAccountId": { + "$ref": "./examples/ReservationSummariesMonthlyWithBillingAccountId.json" + }, + "ReservationSummariesDailyWithBillingProfileId": { + "$ref": "./examples/ReservationSummariesDailyWithBillingProfileId.json" + }, + "ReservationSummariesMonthlyWithBillingProfileId": { + "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeReservationsSummariesParameter" + }, + { + "$ref": "#/parameters/grainParameter" + }, + { + "name": "startDate", + "in": "query", + "description": "Start date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "endDate", + "in": "query", + "description": "End date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "$filter", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationSummariesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationDetails": { + "get": { + "tags": [ + "ReservationDetails" + ], + "operationId": "ReservationsDetails_ListByReservationOrder", + "description": "Lists the reservations details for provided date range.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationDetails": { + "$ref": "./examples/ReservationDetails.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "name": "$filter", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationDetails": { + "get": { + "tags": [ + "ReservationDetails" + ], + "operationId": "ReservationsDetails_ListByReservationOrderAndReservation", + "description": "Lists the reservations details for provided date range.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationDetailsWithReservationId": { + "$ref": "./examples/ReservationDetailsWithReservationId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "$ref": "#/parameters/reservationIdParameter" + }, + { + "name": "$filter", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationDetails": { + "get": { + "tags": [ + "ReservationDetails" + ], + "operationId": "ReservationsDetails_List", + "description": "Lists the reservations details for the defined scope and provided date range.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationDetailsByBillingAccountId": { + "$ref": "./examples/ReservationDetailsByBillingAccountId.json" + }, + "ReservationDetailsByBillingProfileId": { + "$ref": "./examples/ReservationDetailsByBillingProfileId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeReservationDetailsParameter" + }, + { + "name": "startDate", + "in": "query", + "description": "Start date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "endDate", + "in": "query", + "description": "End date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "$filter", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationRecommendations": { + "get": { + "tags": [ + "ReservationRecommendations" + ], + "operationId": "ReservationRecommendations_List", + "description": "List of recommendations for purchasing reserved instances.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationRecommendationsBySubscription-Legacy": { + "$ref": "./examples/ReservationRecommendationsBySubscription.json" + }, + "ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod-Legacy": { + "$ref": "./examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json" + }, + "ReservationRecommendationsByBillingAccount-Legacy": { + "$ref": "./examples/ReservationRecommendationsByBillingAccount.json" + }, + "ReservationRecommendationsByBillingProfile-Modern": { + "$ref": "./examples/ReservationRecommendationsByBillingProfile.json" + } + + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter reservationRecommendations by properties/scope and properties/lookBackPeriod.", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeReservationRecommendationsParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationRecommendationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions": { + "get": { + "tags": [ + "ReservationTransactions" + ], + "operationId": "ReservationTransactions_List", + "description": "List of transactions for reserved instances on billing account scope", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationTransaction": { + "$ref": "./examples/ReservationTransactionsListByBillingAccountId.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "Filter reservation transactions by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationTransactionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/pricesheets/default": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_Get", + "description": "Gets the price sheet for a scope by subscriptionId. Price sheet is available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "PriceSheet": { + "$ref": "./examples/PriceSheet.json" + } + }, + "parameters": [ + { + "name": "$expand", + "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the top N results.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PriceSheetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_GetByBillingPeriod", + "description": "Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "PriceSheetForBillingPeriod": { + "$ref": "./examples/PriceSheetForBillingPeriod.json" + }, + "PriceSheetExpand": { + "$ref": "./examples/PriceSheetExpand.json" + } + }, + "parameters": [ + { + "name": "$expand", + "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the top N results.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PriceSheetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/forecasts": { + "get": { + "tags": [ + "Forecasts" + ], + "x-ms-odata": "#/definitions/Forecast", + "operationId": "Forecasts_List", + "description": "Lists the forecast charges by subscriptionId.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ForecastsList": { + "$ref": "./examples/ForecastsList.json" + }, + "ForecastsListFilterByGrain": { + "$ref": "./examples/ForecastsListFilterByGrain.json" + }, + "ForecastsListFilterByDates": { + "$ref": "./examples/ForecastsListFilterByDates.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ForecastsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/providers/Microsoft.Consumption/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available consumption REST API operations.", + "parameters": [ + { + "$ref": "#/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": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Consumption/aggregatedcost": { + "get": { + "tags": [ + "AggregatedCost" + ], + "operationId": "AggregatedCost_GetByManagementGroup", + "description": "Provides the aggregate cost of a management group and all child management groups by current billing period.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "AggregatedCostByManagementGroup": { + "$ref": "./examples/AggregatedCostByManagementGroup.json" + }, + "AggregatedCostByManagementGroupFilterByDate": { + "$ref": "./examples/AggregatedCostByManagementGroupFilterByDate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/managementGroupIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter aggregated cost by properties/usageStart (Utc time), properties/usageEnd (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ManagementGroupAggregatedCostResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/Microsoft.Consumption/aggregatedcost": { + "get": { + "tags": [ + "AggregatedCost" + ], + "operationId": "AggregatedCost_GetForBillingPeriodByManagementGroup", + "description": "Provides the aggregate cost of a management group and all child management groups by specified billing period", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "AggregatedCostListForBillingPeriodByManagementGroup": { + "$ref": "./examples/AggregatedCostForBillingPeriodByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/managementGroupIdParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ManagementGroupAggregatedCostResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events": { + "get": { + "tags": [ + "Events" + ], + "operationId": "Events_List", + "description": "Lists the events by billingAccountId and billingProfileId for given start and end date.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EventsListByBillingProfile": { + "$ref": "./examples/EventsListByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/startDateParameter" + }, + { + "$ref": "#/parameters/endDateParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Events" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots": { + "get": { + "tags": [ + "Lots" + ], + "operationId": "Lots_List", + "description": "Lists the lots by billingAccountId and billingProfileId.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EventsListByBillingProfile": { + "$ref": "./examples/LotsListByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Lots" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary": { + "get": { + "tags": [ + "Credits" + ], + "operationId": "Credits_Get", + "description": "The credit summary by billingAccountId and billingProfileId.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "CreditSummaryByBillingProfile": { + "$ref": "./examples/CreditSummaryByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CreditSummary" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "MeterDetails": { + "description": "The properties of the meter detail.", + "properties": { + "meterName": { + "description": "The name of the meter, within the given meter category", + "type": "string", + "readOnly": true + }, + "meterCategory": { + "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..", + "type": "string", + "readOnly": true + }, + "meterSubCategory": { + "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.", + "type": "string", + "readOnly": true + }, + "meterLocation": { + "description": "The location in which the Azure service is available.", + "type": "string", + "readOnly": true + }, + "totalIncludedQuantity": { + "description": "The total included quantity associated with the offer.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "pretaxStandardRate": { + "description": "The pretax listing price.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "serviceName": { + "description": "The name of the service.", + "type": "string", + "readOnly": true + }, + "serviceTier": { + "description": "The service tier.", + "type": "string", + "readOnly": true + } + } + }, + "UsageDetail": { + "type": "object", + "discriminator": "kind", + "description": "An usage detail resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "Specifies the kind of usage details.", + "enum": [ + "legacy", + "modern" + ], + "x-ms-enum": { + "name": "UsageDetailsKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ] + }, + "UsageDetailsListResult": { + "description": "Result of listing usage details. It contains a list of available usage details in reverse chronological order by billing period.", + "properties": { + "value": { + "description": "The list of usage details.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/UsageDetail" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "LegacyUsageDetail": { + "description": "Legacy usage detail.", + "type": "object", + "x-ms-discriminator-value": "legacy", + "properties": { + "properties": { + "description": "Properties for legacy usage details", + "$ref": "#/definitions/LegacyUsageDetailProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/UsageDetail" + } + ], + "required": [ + "properties" + ] + }, + "LegacyUsageDetailProperties": { + "description": "The properties of the legacy usage detail.", + "properties": { + "billingAccountId": { + "description": "Billing Account identifier.", + "type": "string", + "readOnly": true + }, + "billingAccountName": { + "description": "Billing Account Name.", + "type": "string", + "readOnly": true + }, + "billingPeriodStartDate": { + "description": "The billing period start date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingPeriodEndDate": { + "description": "The billing period end date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingProfileId": { + "description": "Billing Profile identifier.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "Billing Profile Name.", + "type": "string", + "readOnly": true + }, + "accountOwnerId": { + "description": "Account Owner Id.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "Account Name.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "Subscription guid.", + "type": "string", + "readOnly": true + }, + "subscriptionName": { + "description": "Subscription name.", + "type": "string", + "readOnly": true + }, + "date": { + "description": "Date for the usage record.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "product": { + "description": "Product name for the consumed service or purchase. Not available for Marketplace.", + "type": "string", + "readOnly": true + }, + "partNumber": { + "description": "Part Number of the service used. Can be used to join with the price sheet. Not available for marketplace.", + "type": "string", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "meterDetails": { + "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.", + "$ref": "#/definitions/MeterDetailsResponse", + "readOnly": true + }, + "quantity": { + "description": "The usage quantity.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "effectivePrice": { + "description": "Effective Price that's charged for the usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "cost": { + "description": "The amount of cost before tax.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitPrice": { + "description": "Unit Price is the price applicable to you. (your EA or other contract price).", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billingCurrency": { + "description": "Billing Currency.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "Resource Location.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.", + "type": "string", + "readOnly": true + }, + "resourceId": { + "description": "Azure resource manager resource identifier.", + "type": "string", + "readOnly": true + }, + "resourceName": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "serviceInfo1": { + "description": "Service Info 1.", + "type": "string", + "readOnly": true + }, + "serviceInfo2": { + "description": "Service Info 2.", + "type": "string", + "readOnly": true + }, + "additionalInfo": { + "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.", + "type": "string", + "readOnly": true + }, + "invoiceSection": { + "description": "Invoice Section Name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a cost center is provided.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "Resource Group Name.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "reservationName": { + "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "productOrderId": { + "description": "Product Order Id. For reservations this is the Reservation Order ID.", + "type": "string", + "readOnly": true + }, + "productOrderName": { + "description": "Product Order Name. For reservations this is the SKU that was purchased.", + "type": "string", + "readOnly": true + }, + "offerId": { + "description": "Offer Id. Ex: MS-AZR-0017P, MS-AZR-0148P.", + "type": "string", + "readOnly": true + }, + "isAzureCreditEligible": { + "description": "Is Azure Credit Eligible.", + "type": "boolean", + "readOnly": true + }, + "term": { + "description": "Term (in months). 1 month for monthly recurring purchase. 12 months for a 1 year reservation. 36 months for a 3 year reservation.", + "type": "string", + "readOnly": true + }, + "publisherName": { + "description": "Publisher Name.", + "type": "string", + "readOnly": true + }, + "publisherType": { + "description": "Publisher Type.", + "type": "string", + "readOnly": true + }, + "planName": { + "description": "Plan Name.", + "type": "string", + "readOnly": true + }, + "chargeType": { + "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.", + "type": "string", + "readOnly": true + }, + "frequency": { + "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.", + "type": "string", + "readOnly": true + } + } + }, + "ModernUsageDetail": { + "description": "Modern usage detail.", + "type": "object", + "x-ms-discriminator-value": "modern", + "properties": { + "properties": { + "description": "Properties for modern usage details", + "$ref": "#/definitions/ModernUsageDetailProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/UsageDetail" + } + ], + "required": [ + "properties" + ] + }, + "ModernUsageDetailProperties": { + "description": "The properties of the usage detail.", + "properties": { + "billingAccountId": { + "description": "Billing Account identifier.", + "type": "string", + "readOnly": true + }, + "billingAccountName": { + "description": "Name of the Billing Account.", + "type": "string", + "readOnly": true + }, + "billingPeriodStartDate": { + "description": "Billing Period Start Date as in the invoice.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingPeriodEndDate": { + "description": "Billing Period End Date as in the invoice.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingProfileId": { + "description": "Identifier for the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "Name of the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.", + "type": "string", + "readOnly": true + }, + "subscriptionGuid": { + "description": "Unique Microsoft generated identifier for the Azure Subscription.", + "type": "string", + "readOnly": true + }, + "subscriptionName": { + "description": "Name of the Azure Subscription.", + "type": "string", + "readOnly": true + }, + "date": { + "description": "Date for the usage record.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "product": { + "description": "Name of the product that has accrued charges by consumption or purchase as listed in the invoice. Not available for Marketplace.", + "type": "string", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "meterName": { + "description": "Identifies the name of the meter against which consumption is measured.", + "type": "string", + "readOnly": true + }, + "meterRegion": { + "description": "Identifies the location of the datacenter for certain services that are priced based on datacenter location.", + "type": "string", + "readOnly": true + }, + "meterCategory": { + "description": "Identifies the top-level service for the usage.", + "type": "string", + "readOnly": true + }, + "meterSubCategory": { + "description": "Defines the type or sub-category of Azure service that can affect the rate.", + "type": "string", + "readOnly": true + }, + "serviceFamily": { + "description": "List the service family for the product purchased or charged (Example: Storage ; Compute).", + "type": "string", + "readOnly": true + }, + "quantity": { + "description": "Measure the quantity purchased or consumed.The amount of the meter used during the billing period.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitOfMeasure": { + "description": "Identifies the Unit that the service is charged in. For example, GB, hours, 10,000 s.", + "type": "string", + "readOnly": true + }, + "instanceName": { + "description": "Instance Name.", + "type": "string", + "readOnly": true + }, + "costInUSD": { + "description": "Estimated extendedCost or blended cost before tax in USD.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitPrice": { + "description": "Unit Price is the price applicable to you. (your EA or other contract price).", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billingCurrencyCode": { + "description": "The currency defining the billed cost.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "Name of the resource location.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.", + "type": "string", + "readOnly": true + }, + "serviceInfo1": { + "description": "Service Info 1.", + "type": "string", + "readOnly": true + }, + "serviceInfo2": { + "description": "Service Info 2.", + "type": "string", + "readOnly": true + }, + "additionalInfo": { + "description": "Additional details of this usage item. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "Identifier of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.", + "type": "string", + "readOnly": true + }, + "invoiceSectionName": { + "description": "Name of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a cost center is provided.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "Name of the Azure resource group used for cohesive lifecycle management of resources.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "reservationName": { + "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "productOrderId": { + "description": "The identifier for the asset or Azure plan name that the subscription belongs to. For example: Azure Plan. For reservations this is the Reservation Order ID.", + "type": "string", + "readOnly": true + }, + "productOrderName": { + "description": "Product Order Name. For reservations this is the SKU that was purchased.", + "type": "string", + "readOnly": true + }, + "isAzureCreditEligible": { + "description": "Determines if the cost is eligible to be paid for using Azure credits.", + "type": "boolean", + "readOnly": true + }, + "term": { + "description": "Term (in months). Displays the term for the validity of the offer. For example. In case of reserved instances it displays 12 months for yearly term of reserved instance. For one time purchases or recurring purchases, the terms displays 1 month; This is not applicable for Azure consumption.", + "type": "string", + "readOnly": true + }, + "publisherName": { + "description": "Name of the publisher of the service including Microsoft or Third Party publishers.", + "type": "string", + "readOnly": true + }, + "publisherType": { + "description": "Type of publisher that identifies if the publisher is first party, third party reseller or third party agency.", + "type": "string", + "readOnly": true + }, + "chargeType": { + "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.", + "type": "string", + "readOnly": true + }, + "frequency": { + "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.", + "type": "string", + "readOnly": true + }, + "costInBillingCurrency": { + "description": "ExtendedCost or blended cost before tax in billed currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "costInPricingCurrency": { + "description": "ExtendedCost or blended cost before tax in pricing currency to correlate with prices.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "exchangeRate": { + "description": "Exchange rate used in conversion from pricing currency to billing currency.", + "type": "string", + "readOnly": true + }, + "exchangeRateDate": { + "description": "Date on which exchange rate used in conversion from pricing currency to billing currency.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "invoiceId": { + "description": "Invoice ID as on the invoice where the specific transaction appears.", + "type": "string", + "readOnly": true + }, + "previousInvoiceId": { + "description": "Reference to an original invoice there is a refund (negative cost). This is populated only when there is a refund.", + "type": "string", + "readOnly": true + }, + "pricingCurrencyCode": { + "description": "Pricing Billing Currency.", + "type": "string", + "readOnly": true + }, + "productIdentifier": { + "description": "Identifer for the product that has accrued charges by consumption or purchase . This is the concatenated key of productId and SKuId in partner center.", + "type": "string", + "readOnly": true + }, + "resourceLocationNormalized": { + "description": "Resource Location Normalized.", + "type": "string", + "readOnly": true + }, + "servicePeriodStartDate": { + "description": "Start date for the rating period when the service usage was rated for charges. The prices for Azure services are determined for the rating period.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "servicePeriodEndDate": { + "description": "End date for the period when the service usage was rated for charges. The prices for Azure services are determined based on the rating period.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "customerTenantId": { + "description": "Identifier of the customer's AAD tenant.", + "type": "string", + "readOnly": true + }, + "customerName": { + "description": "Name of the customer's AAD tenant.", + "type": "string", + "readOnly": true + }, + "partnerTenantId": { + "description": "Identifier for the partner's AAD tenant.", + "type": "string", + "readOnly": true + }, + "partnerName": { + "description": "Name of the partner' AAD tenant.", + "type": "string", + "readOnly": true + }, + "resellerMpnId": { + "description": "MPNId for the reseller associated with the subscription.", + "type": "string", + "readOnly": true + }, + "resellerName": { + "description": "Reseller Name.", + "type": "string", + "readOnly": true + }, + "publisherId": { + "description": "Publisher Id.", + "type": "string", + "readOnly": true + }, + "marketPrice": { + "description": "Market Price that's charged for the usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "exchangeRatePricingToBilling": { + "description": "Exchange Rate from pricing currency to billing currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "paygCostInBillingCurrency": { + "description": "The amount of PayG cost before tax in billing currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "paygCostInUSD": { + "description": "The amount of PayG cost before tax in US Dollar currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "partnerEarnedCreditRate": { + "description": "Rate of discount applied if there is a partner earned credit (PEC) based on partner admin link access.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "partnerEarnedCreditApplied": { + "description": "Flag to indicate if partner earned credit has been applied or not.", + "type": "string", + "readOnly": true + } + } + }, + "Marketplace": { + "description": "An marketplace resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MarketplaceProperties", + "title": "Marketplace properties" + } + } + }, + "MarketplacesListResult": { + "description": "Result of listing marketplaces. It contains a list of available marketplaces in reverse chronological order by billing period.", + "type": "object", + "properties": { + "value": { + "description": "The list of marketplaces.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Marketplace" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "MarketplaceProperties": { + "description": "The properties of the marketplace usage detail.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the usage belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "The start of the date time range covered by the usage detail.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usageEnd": { + "description": "The end of the date time range covered by the usage detail.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "resourceRate": { + "description": "The marketplace resource rate.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "offerName": { + "description": "The type of offer.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "The name of resource group.", + "type": "string", + "readOnly": true + }, + "orderNumber": { + "description": "The order number.", + "type": "string", + "readOnly": true + }, + "instanceName": { + "description": "The name of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "instanceId": { + "description": "The uri of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "consumedQuantity": { + "description": "The quantity of usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitOfMeasure": { + "description": "The unit of measure.", + "type": "string", + "readOnly": true + }, + "pretaxCost": { + "description": "The amount of cost before tax.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "isEstimated": { + "description": "The estimated usage is subject to change.", + "type": "boolean", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID).", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "subscriptionGuid": { + "description": "Subscription guid.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "subscriptionName": { + "description": "Subscription name.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "Account name.", + "type": "string", + "readOnly": true + }, + "departmentName": { + "description": "Department name.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a costcenter exists", + "type": "string", + "readOnly": true + }, + "additionalProperties": { + "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand.", + "type": "string", + "readOnly": true + }, + "publisherName": { + "description": "The name of publisher.", + "type": "string", + "readOnly": true + }, + "planName": { + "description": "The name of plan.", + "type": "string", + "readOnly": true + }, + "isRecurringCharge": { + "description": "Flag indicating whether this is a recurring charge or not.", + "type": "boolean", + "readOnly": true + } + } + }, + "Balance": { + "description": "A balance resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BalanceProperties", + "title": "Balance properties" + } + } + }, + "BalanceProperties": { + "description": "The properties of the balance.", + "type": "object", + "properties": { + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "beginningBalance": { + "description": "The beginning balance for the billing period.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "endingBalance": { + "description": "The ending balance for the billing period (for open periods this will be updated daily).", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "newPurchases": { + "description": "Total new purchase amount.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "adjustments": { + "description": "Total adjustment amount.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "utilized": { + "description": "Total Commitment usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "serviceOverage": { + "description": "Overage for Azure services.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "chargesBilledSeparately": { + "description": "Charges Billed separately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalOverage": { + "description": "serviceOverage + chargesBilledSeparately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalUsage": { + "description": "Azure service commitment + total Overage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "azureMarketplaceServiceCharges": { + "description": "Total charges for Azure Marketplace.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billingFrequency": { + "description": "The billing frequency.", + "type": "string", + "enum": [ + "Month", + "Quarter", + "Year" + ], + "x-ms-enum": { + "name": "BillingFrequency", + "modelAsString": true + } + }, + "priceHidden": { + "description": "Price is hidden or not.", + "type": "boolean", + "readOnly": true + }, + "newPurchasesDetails": { + "description": "List of new purchases.", + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "the name of new purchase.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "the value of new purchase.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "readOnly": true + }, + "adjustmentDetails": { + "description": "List of Adjustments (Promo credit, SIE credit etc.).", + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "the name of new adjustment.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "the value of new adjustment.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "readOnly": true + } + } + }, + "ReservationSummary": { + "description": "reservation summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationSummaryProperties", + "title": "Reservation Summary properties" + } + } + }, + "ReservationSummariesListResult": { + "description": "Result of listing reservation summaries.", + "properties": { + "value": { + "description": "The list of reservation summaries.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationSummary" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationSummaryProperties": { + "description": "The properties of the reservation summary.", + "properties": { + "reservationOrderId": { + "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.", + "type": "string", + "readOnly": true + }, + "skuName": { + "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", + "type": "string", + "readOnly": true + }, + "reservedHours": { + "description": "This is the total hours reserved. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "usageDate": { + "description": "Data corresponding to the utilization record. If the grain of data is monthly, it will be first day of month.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usedHours": { + "description": "Total used hours by the reservation", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "minUtilizationPercentage": { + "description": "This is the minimum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 10%, this field will return 10% for that day", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "avgUtilizationPercentage": { + "description": "This is average utilization for the entire time range. (day or month depending on the grain)", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "maxUtilizationPercentage": { + "description": "This is the maximum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 100%, this field will return 100% for that day.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "kind": { + "description": "The reservation kind.", + "type": "string", + "readOnly": true + }, + "purchasedQuantity": { + "description": "This is the purchased quantity for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "remainingQuantity": { + "description": "This is the remaining quantity for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalReservedQuantity": { + "description": "This is the total count of instances that are reserved for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "usedQuantity": { + "description": "This is the used quantity for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "utilizedPercentage": { + "description": "This is the utilized percentage for the reservation Id.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "ReservationDetail": { + "description": "reservation detail resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationDetailProperties", + "title": "Reservation Detail properties" + } + } + }, + "ReservationDetailsListResult": { + "description": "Result of listing reservation details.", + "properties": { + "value": { + "description": "The list of reservation details.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationDetail" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationDetailProperties": { + "description": "The properties of the reservation detail.", + "properties": { + "reservationOrderId": { + "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", + "type": "string", + "readOnly": true + }, + "instanceFlexibilityRatio": { + "description": "The instance Flexibility Ratio.", + "type": "string", + "readOnly": true + }, + "instanceFlexibilityGroup": { + "description": "The instance Flexibility Group.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.", + "type": "string", + "readOnly": true + }, + "skuName": { + "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", + "type": "string", + "readOnly": true + }, + "reservedHours": { + "description": "This is the total hours reserved for the day. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "usageDate": { + "description": "The date on which consumption occurred.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usedHours": { + "description": "This is the total hours used by the instance.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "instanceId": { + "description": "This identifier is the name of the resource or the fully qualified Resource ID.", + "type": "string", + "readOnly": true + }, + "totalReservedQuantity": { + "description": "This is the total count of instances that are reserved for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "kind": { + "description": "The reservation kind.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationsListResult": { + "description": "Result of listing reservation recommendations.", + "properties": { + "value": { + "description": "The list of reservation recommendations.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationRecommendation" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendation": { + "description": "A reservation recommendation resource.", + "type": "object", + "discriminator": "kind", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ResourceAttributes" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "Specifies the kind of reservation recommendation.", + "enum": [ + "legacy", + "modern" + ], + "x-ms-enum": { + "name": "ReservationRecommendationKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ] + }, + "LegacyReservationRecommendation": { + "description": "Legacy reservation recommendation.", + "type": "object", + "x-ms-discriminator-value": "legacy", + "properties": { + "properties": { + "description": "Properties for legacy reservation recommendation", + "$ref": "#/definitions/LegacyReservationRecommendationProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ReservationRecommendation" + } + ], + "required": [ + "properties" + ] + }, + "LegacyReservationRecommendationProperties": { + "description": "The properties of the reservation recommendation.", + "properties": { + "lookBackPeriod": { + "description": "The number of days of usage to look back for recommendation.", + "type": "string", + "readOnly": true + }, + "instanceFlexibilityRatio": { + "description": "The instance Flexibility Ratio.", + "type": "integer", + "readOnly": true + }, + "instanceFlexibilityGroup": { + "description": "The instance Flexibility Group.", + "type": "string", + "readOnly": true + }, + "normalizedSize": { + "description": "The normalized Size.", + "type": "string", + "readOnly": true + }, + "recommendedQuantityNormalized": { + "description": "The recommended Quantity Normalized.", + "type": "number", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID)", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "term": { + "description": "RI recommendations in one or three year terms.", + "type": "string", + "readOnly": true + }, + "costWithNoReservedInstances": { + "description": "The total amount of cost without reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "recommendedQuantity": { + "description": "Recommended quality for reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalCostWithReservedInstances": { + "description": "The total amount of cost with reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "netSavings": { + "description": "Total estimated savings with reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "firstUsageDate": { + "description": "The usage date for looking back.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "scope": { + "description": "Shared or single recommendation.", + "type": "string", + "readOnly": true + }, + "skuProperties": { + "description": "List of sku properties", + "type": "array", + "items": { + "$ref": "#/definitions/SkuProperty" + }, + "readOnly": true + } + } + }, + "SkuProperty": { + "description": "The Sku property", + "properties": { + "name": { + "description": "The name of sku property.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of sku property.", + "type": "string", + "readOnly": true + } + } + }, + "ModernReservationRecommendation": { + "description": "Modern reservation recommendation.", + "type": "object", + "x-ms-discriminator-value": "modern", + "properties": { + "properties": { + "description": "Properties for modern reservation recommendation", + "$ref": "#/definitions/ModernReservationRecommendationProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ReservationRecommendation" + } + ], + "required": [ + "properties" + ] + }, + "ModernReservationRecommendationProperties": { + "description": "The properties of the reservation recommendation.", + "properties": { + "lookBackPeriod": { + "description": "The number of days of usage to look back for recommendation.", + "type": "string", + "readOnly": true + }, + "instanceFlexibilityRatio": { + "description": "The instance Flexibility Ratio.", + "type": "integer", + "readOnly": true + }, + "instanceFlexibilityGroup": { + "description": "The instance Flexibility Group.", + "type": "string", + "readOnly": true + }, + "normalizedSize": { + "description": "The normalized Size.", + "type": "string", + "readOnly": true + }, + "recommendedQuantityNormalized": { + "description": "The recommended Quantity Normalized.", + "type": "number", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID)", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "term": { + "description": "RI recommendations in one or three year terms.", + "type": "string", + "readOnly": true + }, + "costWithNoReservedInstances": { + "description": "The total amount of cost without reserved instances.", + "$ref": "#/definitions/amount", + "readOnly": true + }, + "recommendedQuantity": { + "description": "Recommended quality for reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalCostWithReservedInstances": { + "description": "The total amount of cost with reserved instances.", + "$ref": "#/definitions/amount", + "readOnly": true + }, + "netSavings": { + "description": "Total estimated savings with reserved instances.", + "$ref": "#/definitions/amount", + "readOnly": true + }, + "firstUsageDate": { + "description": "The usage date for looking back.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "scope": { + "description": "Shared or single recommendation.", + "type": "string", + "readOnly": true + }, + "skuProperties": { + "description": "List of sku properties", + "type": "array", + "items": { + "$ref": "#/definitions/SkuProperty" + }, + "readOnly": true + } + } + }, + "ReservationTransactionProperties": { + "default": "The properties of the reservation transaction.", + "properties": { + "eventDate": { + "description": "The date of the transaction", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "reservationOrderId": { + "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the transaction.", + "type": "string", + "readOnly": true + }, + "eventType": { + "description": "The type of the transaction (Purchase, Cancel, etc.)", + "type": "string", + "readOnly": true + }, + "quantity": { + "description": "The quantity of the transaction.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "amount": { + "description": "The charge of the transaction.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the transaction is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "reservationOrderName": { + "description": "The name of the reservation order.", + "type": "string", + "readOnly": true + }, + "purchasingEnrollment": { + "description": "The purchasing enrollment.", + "type": "string", + "readOnly": true + }, + "purchasingSubscriptionGuid": { + "description": "The subscription guid that makes the transaction.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "purchasingSubscriptionName": { + "description": "The subscription name that makes the transaction.", + "type": "string", + "readOnly": true + }, + "armSkuName": { + "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", + "type": "string", + "readOnly": true + }, + "term": { + "description": "This is the term of the transaction.", + "type": "string", + "readOnly": true + }, + "region": { + "description": "The region of the transaction.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "The name of the account that makes the transaction.", + "type": "string", + "readOnly": true + }, + "accountOwnerEmail": { + "description": "The email of the account owner that makes the transaction.", + "type": "string", + "readOnly": true + }, + "departmentName": { + "description": "The department name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a cost center is provided.", + "type": "string", + "readOnly": true + }, + "currentEnrollment": { + "description": "The current enrollment.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationTransaction": { + "description": "Reservation transaction resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationTransactionProperties", + "title": "Reservation Transaction properties" + } + } + }, + "ReservationTransactionsListResult": { + "description": "Result of listing reservation transactions", + "properties": { + "value": { + "description": "The list of reservation transactions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationTransaction" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TagsResult": { + "description": "A resource listing all tags.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagProperties", + "title": "Tag properties" + } + } + }, + "TagProperties": { + "description": "The properties of the tag.", + "properties": { + "tags": { + "description": "A list of Tag.", + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + } + } + } + }, + "Tag": { + "description": "The tag resource.", + "properties": { + "key": { + "description": "Tag key.", + "type": "string" + } + } + }, + "BudgetsListResult": { + "description": "Result of listing budgets. It contains a list of available budgets in the scope provided.", + "properties": { + "value": { + "description": "The list of budgets.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Budget" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Budget": { + "description": "A budget resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BudgetProperties", + "title": "Budget properties" + } + } + }, + "BudgetProperties": { + "description": "The properties of the budget.", + "properties": { + "category": { + "description": "The category of the budget, whether the budget tracks cost or usage.", + "type": "string", + "enum": [ + "Cost", + "Usage" + ], + "x-ms-enum": { + "name": "CategoryType", + "modelAsString": true + } + }, + "amount": { + "description": "The total amount of cost to track with the budget", + "type": "number", + "format": "decimal" + }, + "timeGrain": { + "description": "The time covered by a budget. Tracking of the amount will be reset based on the time grain.", + "type": "string", + "enum": [ + "Monthly", + "Quarterly", + "Annually", + "BillingMonth", + "BillingQuarter", + "BillingAnnual" + ], + "x-ms-enum": { + "name": "TimeGrainType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than three months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.", + "$ref": "#/definitions/BudgetTimePeriod" + }, + "filters": { + "description": "May be used to filter budgets by resource group, resource, or meter.", + "type": "object", + "$ref": "#/definitions/Filters" + }, + "currentSpend": { + "description": "The current amount of cost which is being tracked for a budget.", + "$ref": "#/definitions/CurrentSpend", + "readOnly": true + }, + "notifications": { + "type": "object", + "description": "Dictionary of notifications associated with the budget. Budget can have up to five notifications.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/Notification" + }, + "maxItems": 5 + } + }, + "required": [ + "category", + "amount", + "timeGrain", + "timePeriod" + ] + }, + "BudgetTimePeriod": { + "description": "The start and end date for a budget.", + "properties": { + "startDate": { + "description": "The start date for the budget.", + "type": "string", + "format": "date-time" + }, + "endDate": { + "description": "The end date for the budget. If not provided, we default this to 10 years from the start date.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "startDate" + ] + }, + "Filters": { + "description": "May be used to filter budgets by resource group, resource, or meter.", + "properties": { + "resourceGroups": { + "description": "The list of filters on resource groups, allowed at subscription level only.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 10 + }, + "resources": { + "description": "The list of filters on resources.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 10 + }, + "meters": { + "description": "The list of filters on meters (GUID), mandatory for budgets of usage category. ", + "type": "array", + "items": { + "type": "string", + "format": "uuid" + }, + "minItems": 0, + "maxItems": 10 + }, + "tags": { + "type": "object", + "description": "The dictionary of filters on tags.", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "minItems": 0, + "maxItems": 10 + } + } + }, + "CurrentSpend": { + "description": "The current amount of cost which is being tracked for a budget.", + "properties": { + "amount": { + "description": "The total amount of cost which is being tracked by the budget.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unit": { + "description": "The unit of measure for the budget amount.", + "type": "string", + "readOnly": true + } + } + }, + "Notification": { + "description": "The notification associated with a budget.", + "properties": { + "enabled": { + "description": "The notification is enabled or not.", + "type": "boolean" + }, + "operator": { + "description": "The comparison operator.", + "type": "string", + "enum": [ + "EqualTo", + "GreaterThan", + "GreaterThanOrEqualTo" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "threshold": { + "description": "Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.", + "type": "number", + "format": "decimal" + }, + "contactEmails": { + "description": "Email addresses to send the budget notification to when the threshold is exceeded.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "maxItems": 50 + }, + "contactRoles": { + "description": "Contact roles to send the budget notification to when the threshold is exceeded.", + "type": "array", + "items": { + "type": "string" + } + }, + "contactGroups": { + "description": "Action groups to send the budget notification to when the threshold is exceeded.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 50 + } + }, + "required": [ + "enabled", + "operator", + "threshold", + "contactEmails" + ] + }, + "PriceSheetResult": { + "description": "An pricesheet resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PriceSheetModel", + "title": "Price sheet properties" + } + } + }, + "PriceSheetModel": { + "description": "price sheet result. It contains the pricesheet associated with billing period", + "properties": { + "pricesheets": { + "description": "Price sheet", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PriceSheetProperties" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PriceSheetProperties": { + "description": "The properties of the price sheet.", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the usage belongs to.", + "type": "string", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID)", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "meterDetails": { + "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.", + "$ref": "#/definitions/MeterDetails", + "readOnly": true + }, + "unitOfMeasure": { + "description": "Unit of measure", + "type": "string", + "readOnly": true + }, + "includedQuantity": { + "description": "Included quality for an offer", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "partNumber": { + "description": "Part Number", + "type": "string", + "readOnly": true + }, + "unitPrice": { + "description": "Unit Price", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currencyCode": { + "description": "Currency Code", + "type": "string", + "readOnly": true + }, + "offerId": { + "description": "Offer Id", + "type": "string", + "readOnly": true + } + } + }, + "Forecast": { + "description": "A forecast resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ForecastProperties", + "title": "Forecast properties" + } + } + }, + "ForecastsListResult": { + "description": "Result of listing forecasts. It contains a list of available forecasts.", + "type": "object", + "properties": { + "value": { + "description": "The list of forecasts.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Forecast" + } + } + } + }, + "ForecastProperties": { + "description": "The properties of the forecast charge.", + "type": "object", + "properties": { + "usageDate": { + "description": "The usage date of the forecast.", + "type": "string", + "readOnly": true + }, + "grain": { + "description": "The granularity of forecast.", + "type": "string", + "enum": [ + "Daily", + "Monthly", + "Yearly" + ], + "x-ms-enum": { + "name": "Grain", + "modelAsString": true + } + }, + "charge": { + "description": "The amount of charge", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "chargeType": { + "description": "The type of the charge. Could be actual or forecast", + "type": "string", + "enum": [ + "Actual", + "Forecast" + ], + "x-ms-enum": { + "name": "ChargeType", + "modelAsString": true + } + }, + "confidenceLevels": { + "description": "The details about the forecast confidence levels. This is populated only when chargeType is Forecast.", + "type": "array", + "items": { + "type": "object", + "properties": { + "percentage": { + "description": "The percentage level of the confidence", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "bound": { + "description": "The boundary of the percentage, values could be 'Upper' or 'Lower'", + "type": "string", + "enum": [ + "Upper", + "Lower" + ], + "x-ms-enum": { + "name": "Bound", + "modelAsString": true + } + }, + "value": { + "description": "The amount of forecast within the percentage level", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "readOnly": true + } + } + }, + "ManagementGroupAggregatedCostResult": { + "description": "A management group aggregated cost resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupAggregatedCostProperties", + "title": "Management Group Aggregated Cost properties" + } + } + }, + "ManagementGroupAggregatedCostProperties": { + "description": "The properties of the Management Group Aggregated Cost.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the aggregated cost belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "The start of the date time range covered by aggregated cost.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usageEnd": { + "description": "The end of the date time range covered by the aggregated cost.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "azureCharges": { + "description": "Azure Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "marketplaceCharges": { + "description": "Marketplace Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "chargesBilledSeparately": { + "description": "Charges Billed Separately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "children": { + "description": "Children of a management group", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupAggregatedCostResult" + } + }, + "includedSubscriptions": { + "description": "List of subscription Guids included in the calculation of aggregated cost", + "type": "array", + "items": { + "type": "string" + } + }, + "excludedSubscriptions": { + "description": "List of subscription Guids excluded from the calculation of aggregated cost", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ChargesListResult": { + "description": "Result of listing charge summary.", + "properties": { + "value": { + "description": "The list of charge summary", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ChargeSummary" + } + } + } + }, + "ChargeSummary": { + "description": "A charge summary resource.", + "type": "object", + "discriminator": "kind", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "Specifies the kind of charge summary.", + "enum": [ + "legacy", + "modern" + ], + "x-ms-enum": { + "name": "ChargeSummaryKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ] + }, + "LegacyChargeSummary": { + "description": "Legacy charge summary.", + "type": "object", + "x-ms-discriminator-value": "legacy", + "properties": { + "properties": { + "description": "Properties for legacy charge summary", + "$ref": "#/definitions/LegacyChargeSummaryProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ChargeSummary" + } + ], + "required": [ + "properties" + ] + }, + "LegacyChargeSummaryProperties": { + "description": "The properties of legacy charge summary.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the charge belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "Usage start date.", + "type": "string", + "readOnly": true + }, + "usageEnd": { + "description": "Usage end date.", + "type": "string", + "readOnly": true + }, + "azureCharges": { + "description": "Azure Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "chargesBilledSeparately": { + "description": "Charges Billed separately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "marketplaceCharges": { + "description": "Marketplace Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "Currency Code", + "type": "string", + "readOnly": true + } + } + }, + "ModernChargeSummary": { + "description": "Modern charge summary.", + "type": "object", + "x-ms-discriminator-value": "modern", + "properties": { + "properties": { + "description": "Properties for modern charge summary", + "$ref": "#/definitions/ModernChargeSummaryProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ChargeSummary" + } + ], + "required": [ + "properties" + ] + }, + "ModernChargeSummaryProperties": { + "description": "The properties of modern charge summary.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the charge belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "Usage start date.", + "type": "string", + "readOnly": true + }, + "usageEnd": { + "description": "Usage end date.", + "type": "string", + "readOnly": true + }, + "azureCharges": { + "description": "Azure Charges.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "chargesBilledSeparately": { + "description": "Charges Billed separately.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "marketplaceCharges": { + "description": "Marketplace Charges.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "billingAccountId": { + "description": "Billing Account Id", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "Billing Profile Id", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "Invoice Section Id", + "type": "string", + "readOnly": true + }, + "customerId": { + "description": "Customer Id", + "type": "string", + "readOnly": true + }, + "isInvoiced": { + "description": "Is charge Invoiced", + "type": "boolean", + "readOnly": true + } + } + }, + "MeterDetailsResponse": { + "description": "The properties of the meter detail.", + "properties": { + "meterName": { + "description": "The name of the meter, within the given meter category", + "type": "string", + "readOnly": true + }, + "meterCategory": { + "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..", + "type": "string", + "readOnly": true + }, + "meterSubCategory": { + "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..", + "type": "string", + "readOnly": true + }, + "unitOfMeasure": { + "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.", + "type": "string", + "readOnly": true + }, + "serviceFamily": { + "description": "The service family.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "Operation": { + "description": "A Consumption REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Consumption.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: UsageDetail, etc.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "OperationListResult": { + "description": "Result of listing consumption operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of consumption operations supported by the Microsoft.Consumption resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Events": { + "description": "Result of listing event summary.", + "properties": { + "value": { + "description": "The list of event summary.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EventSummary" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "EventSummary": { + "description": "An event summary resource.", + "type": "object", + "allOf": [{ + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EventProperties", + "title": "Event summary properties" + } + } + }, + "EventProperties": { + "description": "The event properties.", + "properties": { + "transactionDate": { + "description": "Transaction date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "description": { + "description": "Transaction description.", + "type": "string", + "readOnly": true + }, + "newCredit": { + "description": "New Credit.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "adjustments": { + "description": "Adjustments amount.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "creditExpired": { + "description": "Credit expired.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "charges": { + "description": "Charges amount.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "closedBalance": { + "description": "Closed balance.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "eventType": { + "description": "The type of event.", + "type": "string", + "enum": [ + "SettledCharges", + "PendingCharges", + "PendingAdjustments", + "PendingNewCredit", + "PendingExpiredCredit", + "UnKnown", + "NewCredit" + ], + "x-ms-enum": { + "name": "EventType", + "modelAsString": true + } + }, + "invoiceNumber": { + "description": "Invoice number.", + "type": "string", + "readOnly": true + } + } + }, + "Lots": { + "description": "Result of listing lot summary.", + "properties": { + "value": { + "description": "The list of lot summary.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/LotSummary" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "LotSummary": { + "description": "A lot summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LotProperties", + "title": "Lot summary properties" + } + } + }, + "LotProperties": { + "description": "The lot properties.", + "properties": { + "originalAmount": { + "description": "Original amount.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "closedBalance": { + "description": "Closed balance.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "source": { + "description": "Lot source.", + "type": "string", + "enum": [ + "PurchasedCredit", + "PromotionalCredit" + ], + "x-ms-enum": { + "name": "LotSource", + "modelAsString": true + }, + "readOnly": true + }, + "startDate": { + "description": "Start date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "expirationDate": { + "description": "Expiration date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "poNumber": { + "description": "PO number.", + "type": "string", + "readOnly": true + } + } + }, + "CreditSummary": { + "description": "A credit summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreditSummaryProperties", + "title": "Credit summary properties" + } + } + }, + "CreditSummaryProperties": { + "description": "The properties of the credit summary.", + "type": "object", + "properties": { + "balanceSummary": { + "description": "Summary of balances associated with this credit summary.", + "readOnly": true, + "$ref": "#/definitions/CreditBalanceSummary" + }, + "pendingCreditAdjustments": { + "description": "Pending credit adjustments.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "expiredCredit": { + "description": "Expired credit.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "pendingEligibleCharges": { + "description": "Pending eligible charges.", + "readOnly": true, + "$ref": "#/definitions/amount" + } + } + }, + "CreditBalanceSummary": { + "description": "Summary of credit balances.", + "properties": { + "estimatedBalance": { + "description": "Estimated balance.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "currentBalance": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/amount" + } + } + }, + "amount": { + "description": "The amount plus currency .", + "properties": { + "currency":{ + "readOnly": true, + "type": "string", + "description": "Amount currency." + }, + "value":{ + "readOnly": true, + "type": "number", + "format": "decimal", + "description": "Amount." + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "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." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ResourceAttributes": { + "description": "The Resource model definition.", + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Resource location" + }, + "sku": { + "readOnly": true, + "type": "string", + "description": "Resource sku" + } + } + }, + "ProxyResource": { + "description": "The Resource model definition.", + "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." + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "scopeChargesParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with charges operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope. For department and enrollment accounts, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeUsageDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with usage details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and management group, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeMarketplaceParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with marketplace operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and ManagementGroup, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeBudgetParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeTagsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with tags operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope..", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationsSummariesParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservations summaries operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservations details operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationRecommendationsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservation recommendations operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2019-10-01." + }, + "billingAccountIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "BillingAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "departmentIdParameter": { + "name": "departmentId", + "in": "path", + "description": "Department ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "enrollmentAccountIdParameter": { + "name": "enrollmentAccountId", + "in": "path", + "description": "EnrollmentAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Azure Resource Group Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "budgetNameParameter": { + "name": "budgetName", + "in": "path", + "description": "Budget Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingPeriodNameParameter": { + "name": "billingPeriodName", + "in": "path", + "description": "Billing Period Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "reservationOrderIdParameter": { + "name": "reservationOrderId", + "in": "path", + "description": "Order Id of the reservation", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "reservationIdParameter": { + "name": "reservationId", + "in": "path", + "description": "Id of the reservation", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "grainParameter": { + "name": "grain", + "description": "Can be daily or monthly", + "x-ms-parameter-location": "method", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "daily", + "monthly" + ], + "x-ms-enum": { + "name": "datagrain", + "modelAsString": true, + "values": [ + { + "value": "daily", + "description": "Daily grain of data", + "name": "DailyGrain" + }, + { + "value": "monthly", + "description": "Monthly grain of data", + "name": "MonthlyGrain" + } + ] + } + }, + "managementGroupIdParameter": { + "name": "managementGroupId", + "in": "path", + "description": "Azure Management Group ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingProfileIdParameter": { + "name": "billingProfileId", + "in": "path", + "description": "Azure Billing Profile ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "invoiceSectionIdParameter": { + "name": "invoiceSectionId", + "in": "path", + "description": "Azure Invoice Section ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "startDateParameter": { + "name": "startDate", + "in": "query", + "description": "Start date", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "endDateParameter": { + "name": "endDate", + "in": "query", + "description": "End date", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "metricParameter": { + "name": "metric", + "in": "query", + "description": "Allows to select different type of cost/usage records.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "enum": [ + "actualcost", + "amortizedcost", + "usage" + ], + "x-ms-enum": { + "name": "metrictype", + "modelAsString": true, + "values": [ + { + "value": "actualcost", + "description": "Actual cost data.", + "name": "ActualCostMetricType" + }, + { + "value": "amortizedcost", + "description": "Amortized cost data.", + "name": "AmortizedCostMetricType" + }, + { + "value": "usage", + "description": "Usage data.", + "name": "UsageMetricType" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroup.json new file mode 100644 index 000000000000..2fe09c10dbb4 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1", + "name": "aggregatedcostId1", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "1caaa5a3-2b66-438e-8ab4-bce37d518c5d" + ], + "excludedSubscriptions": [], + "usageStart": "2019-10-01T00:00:00.0000000Z", + "usageEnd": "2018-10-31T00:00:00.0000000Z", + "azureCharges": 250.9876, + "marketplaceCharges": 150.786, + "chargesBilledSeparately": 120.345, + "currency": "USD", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2", + "name": "aggregatedcostId2", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "c349567d-c83a-48c9-ab0e-578c69dc97a4" + ], + "excludedSubscriptions": [], + "usageStart": "2019-10-01T00:00:00.0000000Z", + "usageEnd": "2018-10-31T00:00:00.0000000Z", + "azureCharges": 150.0, + "marketplaceCharges": 50.786, + "chargesBilledSeparately": 30.345, + "currency": "USD", + "children": [] + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroupFilterByDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroupFilterByDate.json new file mode 100644 index 000000000000..abfa2f26de2c --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostByManagementGroupFilterByDate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest", + "$filter": "usageStart ge '2018-08-15' and properties/usageStart le '2018-08-31'" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1", + "name": "aggregatedcostId1", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "1caaa5a3-2b66-438e-8ab4-bce37d518c5d" + ], + "excludedSubscriptions": [], + "usageStart": "2018-08-15T00:00:00.0000000Z", + "usageEnd": "2018-08-31T00:00:00.0000000Z", + "azureCharges": 150.9876, + "marketplaceCharges": 80.786, + "chargesBilledSeparately": 90.345, + "currency": "USD", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2", + "name": "aggregatedcostId2", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "c349567d-c83a-48c9-ab0e-578c69dc97a4" + ], + "excludedSubscriptions": [], + "usageStart": "2018-08-15T00:00:00.0000000Z", + "usageEnd": "2018-08-31T00:00:00.0000000Z", + "azureCharges": 50.0, + "marketplaceCharges": 10.786, + "chargesBilledSeparately": 30.345, + "currency": "USD", + "children": [] + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json new file mode 100644 index 000000000000..fc7a51a5859f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201807" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1", + "name": "aggregatedcostId1", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "usageStart": "2018-07-01T00:00:00.0000000Z", + "usageEnd": "2018-07-31T00:00:00.0000000Z", + "azureCharges": 250.9876, + "marketplaceCharges": 150.786, + "chargesBilledSeparately": 120.345, + "currency": "USD", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2", + "name": "aggregatedcostId2", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "usageStart": "2018-07-01T00:00:00.0000000Z", + "usageEnd": "2018-07-31T00:00:00.0000000Z", + "azureCharges": 150.0, + "marketplaceCharges": 50.786, + "chargesBilledSeparately": 30.345, + "currency": "USD", + "children": [] + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccount.json new file mode 100644 index 000000000000..ff884be98a6b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccount.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/balances/balanceId1", + "name": "balanceId1", + "type": "Microsoft.Consumption/balances", + "properties": { + "currency": "USD ", + "beginningBalance": 3396469.19, + "endingBalance": 2922371.02, + "newPurchases": 0, + "adjustments": 0, + "utilized": 474098.17, + "serviceOverage": 0, + "chargesBilledSeparately": 0, + "totalOverage": 0, + "totalUsage": 474098.17, + "azureMarketplaceServiceCharges": 609.82, + "billingFrequency": "Month", + "priceHidden": false, + "newPurchasesDetails": [ + { + "name": "Promo Purchase", + "value": 1 + } + ], + "adjustmentDetails": [ + { + "name": "Promo Credit", + "value": 1.1 + }, + { + "name": "SIE Credit", + "value": 1.0 + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccountForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccountForBillingPeriod.json new file mode 100644 index 000000000000..8d7872f4cb98 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BalancesByBillingAccountForBillingPeriod.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "billingPeriodName": "201702" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/balances/balanceId1", + "name": "balanceId1", + "type": "Microsoft.Consumption/balances", + "properties": { + "currency": "USD ", + "beginningBalance": 3396469.19, + "endingBalance": 2922371.02, + "newPurchases": 0, + "adjustments": 0, + "utilized": 474098.17, + "serviceOverage": 0, + "chargesBilledSeparately": 0, + "totalOverage": 0, + "totalUsage": 474098.17, + "azureMarketplaceServiceCharges": 609.82, + "billingFrequency": "Month", + "priceHidden": false, + "newPurchasesDetails": [ + { + "name": "Promo Purchase", + "value": 1 + } + ], + "adjustmentDetails": [ + { + "name": "Promo Credit", + "value": 1.1 + }, + { + "name": "SIE Credit", + "value": 1.0 + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Budget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Budget.json new file mode 100644 index 000000000000..8471ee227283 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Budget.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MPDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BudgetsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BudgetsList.json new file mode 100644 index 000000000000..28b3c2a85f87 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/BudgetsList.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MYDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ] + }, + "Actual_GreaterThanOrEqualTo_90_Percent": { + "enabled": true, + "operator": "GreaterThanOrEqualTo", + "threshold": 90, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + }, + { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 600.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MYDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 120.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_40_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 40, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ] + }, + "Actual_GreaterThanOrEqualTo_60_Percent": { + "enabled": true, + "operator": "GreaterThanOrEqualTo", + "threshold": 60, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByDepartment.json new file mode 100644 index 000000000000..3b3291d2157a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByDepartment.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingPeriodName": "201804", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/departments/42425" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/departments/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json new file mode 100644 index 000000000000..f22c591e166b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingPeriodName": "201804", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccount.json new file mode 100644 index 000000000000..6636da8be40d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccount.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "startDate": "2019-09-01", + "endDate": "2019-10-31", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2019-10-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 0.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 265.09 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": null, + "invoiceSectionId": null + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json new file mode 100644 index 000000000000..294ef5ac70b3 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/billingProfileId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/123456/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/123456" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/42425/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json new file mode 100644 index 000000000000..45702222424d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/customerId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "customerId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890", + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/123456/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "customerId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/123456", + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json new file mode 100644 index 000000000000..8fd9a01546cc --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/invoiceSectionId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/4567" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789//billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfile.json new file mode 100644 index 000000000000..06fa5dd0fa68 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfile.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2460" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2019-10-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 0.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 265.09 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460", + "invoiceSectionId": null + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json new file mode 100644 index 000000000000..d35ff42ddd66 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/invoiceSectionId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/4567" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789//billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileInvoiceSection.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileInvoiceSection.json new file mode 100644 index 000000000000..4c20ceba9999 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernBillingProfileInvoiceSection.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "startDate": "2019-09-01", + "endDate": "2019-10-31", + "scope" : "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2019-10-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernCustomer.json new file mode 100644 index 000000000000..a9a3a3f45aa1 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernCustomer.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/67890" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2019-10-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 0.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 265.09 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": null, + "invoiceSectionId": null + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernInvoiceSectionId.json new file mode 100644 index 000000000000..6e1f3817971a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListByModernInvoiceSectionId.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/97531" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/invoiceSections/97531/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2019-10-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 12.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 0.0 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/invoiceSections/97531" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForDepartmentFilterByStartEndDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForDepartmentFilterByStartEndDate.json new file mode 100644 index 000000000000..dca6e2a56574 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForDepartmentFilterByStartEndDate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/departments/42425", + "$filter": "usageStart eq '2018-04-01' AND usageEnd eq '2018-05-30'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/departments/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json new file mode 100644 index 000000000000..28fe7479c0dd --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreateOrUpdateBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreateOrUpdateBudget.json new file mode 100644 index 000000000000..d527262295e6 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreateOrUpdateBudget.json @@ -0,0 +1,185 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "eTag": "\"1d34d016a593709\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MYDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MPDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MPDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json new file mode 100644 index 000000000000..60a0899f1671 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "1234:5678", + "billingProfileId": "2468" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/credits/balanceSummary1", + "name": "balanceSummary1", + "type": "Microsoft.Consumption/credits/balanceSummary", + "properties": { + "balanceSummary": { + "estimatedBalance": { + "currency": "USD", + "value": 600.00 + }, + "currentBalance": { + "currency": "USD", + "value": 100.00 + } + }, + "pendingCreditAdjustments": { + "currency": "USD", + "value": 500.00 + }, + "expiredCredit": { + "currency": "USD", + "value": 0.00 + }, + "pendingEligibleCharges": { + "currency": "USD", + "value": 0.00 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/DeleteBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/DeleteBudget.json new file mode 100644 index 000000000000..2bb617136dd8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/DeleteBudget.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json new file mode 100644 index 000000000000..5ab4587adb1e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "1234:5678", + "billingProfileId": "4268", + "startDate": "2019-09-01", + "endDate": "2019-10-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event1", + "name": "event1", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-07-01T00:00:00Z", + "description": "Settled invoice #312033", + "newCredit": { + "currency": "USD", + "value": 0.00 + }, + "adjustments": { + "currency": "USD", + "value": 0.00 + }, + "creditExpired": { + "currency": "USD", + "value": 0.00 + }, + "charges": { + "currency": "USD", + "value": 500.00 + }, + "closedBalance": { + "currency": "USD", + "value": 500.00 + }, + "eventType": "SettledCharges", + "invoiceNumber": "3301" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event2", + "name": "event2", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-08-01T00:00:00Z", + "description": "New credits added", + "newCredit": { + "currency": "USD", + "value": 400.00 + }, + "adjustments": { + "currency": "USD", + "value": 0.00 + }, + "creditExpired": { + "currency": "USD", + "value": 0.00 + }, + "charges": { + "currency": "USD", + "value": 0.00 + }, + "closedBalance": { + "currency": "USD", + "value": 900.00 + }, + "eventType": "NewCredit", + "invoiceNumber": "3302" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event3", + "name": "event3", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-09-01T00:00:00Z", + "description": "Credits Expired", + "newCredit": { + "currency": "USD", + "value": 0.00 + }, + "adjustments": { + "currency": "USD", + "value": 0.00 + }, + "creditExpired": { + "currency": "USD", + "value": 300.00 + }, + "charges": { + "currency": "USD", + "value": 0.00 + }, + "closedBalance": { + "currency": "USD", + "value": 600.00 + }, + "eventType": "ExpiredCredit", + "invoiceNumber": "" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event4", + "name": "event4", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-10-01T00:00:00Z", + "description": "Settled invoice #212033", + "newCredit": { + "currency": "USD", + "value": 300.00 + }, + "adjustments": { + "currency": "USD", + "value": -200.00 + }, + "creditExpired": { + "currency": "USD", + "value": 100.00 + }, + "charges": { + "currency": "USD", + "value": 300.00 + }, + "closedBalance": { + "currency": "USD", + "value": 700.00 + }, + "eventType": "SettledCharges", + "invoiceNumber": "3303" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsList.json new file mode 100644 index 000000000000..4ed78e960b94 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId1", + "name": "forecastId1", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-01", + "grain": "Daily", + "charge": 752.000000, + "currency": "USD", + "chargeType": "Actual", + "confidenceLevels": null + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId2", + "name": "forecastId2", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-02", + "grain": "Daily", + "charge": 753.809074, + "currency": "USD", + "chargeType": "Forecast", + "confidenceLevels": [ + { + "percentage": 95, + "bound": "Upper", + "value": 1165.951737 + }, + { + "percentage": 95, + "bound": "Lower", + "value": 340.753404 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByDates.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByDates.json new file mode 100644 index 000000000000..54b8aa69db8b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByDates.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "$filter": "usagedate ge '2018-04-01' AND usagedate le '2018-04-02'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId1", + "name": "forecastId1", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-01", + "grain": "Daily", + "charge": 752.000000, + "currency": "USD", + "chargeType": "Actual", + "confidenceLevels": null + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId2", + "name": "forecastId2", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-02", + "grain": "Daily", + "charge": 753.809074, + "currency": "USD", + "chargeType": "Forecast", + "confidenceLevels": [ + { + "percentage": 95, + "bound": "Upper", + "value": 1165.951737 + }, + { + "percentage": 95, + "bound": "Lower", + "value": 340.753404 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByGrain.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByGrain.json new file mode 100644 index 000000000000..6645daad7657 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ForecastsListFilterByGrain.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "$filter": "Grain eq 'Monthly'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId1", + "name": "forecastId1", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-01", + "grain": "Monthly", + "charge": 752.000000, + "currency": "USD", + "chargeType": "Actual", + "confidenceLevels": null + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId2", + "name": "forecastId2", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-05-01", + "grain": "Monthly", + "charge": 753.809074, + "currency": "USD", + "chargeType": "Forecast", + "confidenceLevels": [ + { + "percentage": 95, + "bound": "Upper", + "value": 1165.951737 + }, + { + "percentage": 95, + "bound": "Lower", + "value": 340.753404 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json new file mode 100644 index 000000000000..2a06222b67fc --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "1234:5678", + "billingProfileId": "2468" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1", + "name": "lot1", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 5000.00 + }, + "closedBalance": { + "currency": "USD", + "value": 60.90 + }, + "source": "PurchasedCredit", + "startDate": "2019-10-01T00:00:00Z", + "expirationDate": "2019-11-01T00:00:00Z", + "poNumber": "3524" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot2", + "name": "lot2", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 6000.00 + }, + "closedBalance": { + "currency": "USD", + "value": 80.90 + }, + "source": "PurchasedCredit", + "startDate": "2019-11-01T00:00:00Z", + "expirationDate": "2019-12-31T00:00:00Z", + "poNumber": "31224" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountList.json new file mode 100644 index 000000000000..7751ca3d82a9 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "billingAccountId": "123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplaceId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan1", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json new file mode 100644 index 000000000000..963128c55963 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "billingPeriodName": "201702" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartmentList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartmentList.json new file mode 100644 index 000000000000..4bbae1db565d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartmentList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "departmentId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/departments/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json new file mode 100644 index 000000000000..4bbae1db565d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "departmentId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/departments/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccountList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccountList.json new file mode 100644 index 000000000000..d4cfd0e2c7d2 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccountList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "enrollmentAccountId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/enrollmentAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json new file mode 100644 index 000000000000..d4cfd0e2c7d2 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "enrollmentAccountId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/enrollmentAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroupList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroupList.json new file mode 100644 index 000000000000..68b2ceb49b3e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroupList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201810/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201810", + "usageStart": "2018-10-13T00:00:00Z", + "usageEnd": "2018-10-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810/providers/Microsoft.Consumption/marketplaces/marketplaceId2", + "name": "marketplacesId2", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account2", + "additionalProperties": "additionalProperties", + "costCenter": "Center2", + "departmentName": "Department2", + "billingPeriodId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810", + "usageStart": "2018-10-13T00:00:00Z", + "usageEnd": "2018-10-13T23:59:59Z", + "instanceName": "shared2", + "instanceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared2", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "11111111-1111-1111-1111-111111111111", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "11111111-1111-1111-1111-111111111111", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "11111111-1111-1111-1111-111111111111", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json new file mode 100644 index 000000000000..606cfa452cfc --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201808", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201808/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201808", + "usageStart": "2018-08-13T00:00:00Z", + "usageEnd": "2018-08-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201808/providers/Microsoft.Consumption/marketplaces/marketplaceId2", + "name": "marketplacesId2", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account2", + "additionalProperties": "additionalProperties", + "costCenter": "Center2", + "departmentName": "Department2", + "billingPeriodId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810", + "usageStart": "2018-08-13T00:00:00Z", + "usageEnd": "2018-08-13T23:59:59Z", + "instanceName": "shared2", + "instanceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared2", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "11111111-1111-1111-1111-111111111111", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "11111111-1111-1111-1111-111111111111", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "11111111-1111-1111-1111-111111111111", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesList.json new file mode 100644 index 000000000000..69a82a339d80 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketPlaces/marketplaceId1", + "name": "marketplaceId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan1", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesListForBillingPeriod.json new file mode 100644 index 000000000000..c5e05fbec9aa --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/MarketplacesListForBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201801" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketPlaces/marketplacesId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheet.json new file mode 100644 index 000000000000..6151cb9b1ee5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default", + "name": "default", + "type": "Microsoft.Consumption/pricesheets", + "properties": { + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D", + "pricesheets": [ + { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "meterId": "00000000-0000-0000-0000-000000000000", + "unitOfMeasure": "100 Hours", + "includedQuantity": 100, + "partNumber": "XX-11110", + "unitPrice": 0.00328, + "currencyCode": "EUR", + "offerId": "OfferId 1" + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetExpand.json new file mode 100644 index 000000000000..276ede9c6559 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetExpand.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201801", + "$expand": "meterDetails" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default", + "name": "default", + "type": "Microsoft.Consumption/pricesheets", + "properties": { + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D&$expand=properties/pricesheets/meterDetails", + "pricesheets": [ + { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "meterId": "00000000-0000-0000-0000-000000000000", + "unitOfMeasure": "100 Hours", + "includedQuantity": 100, + "partNumber": "XX-11110", + "unitPrice": 0.00328, + "currencyCode": "EUR", + "offerId": "OfferId 1", + "meterDetails": { + "meterName": "Data Transfer Out (GB)", + "meterCategory": "Networking", + "unit": "GB", + "meterLocation": "Zone 2", + "totalIncludedQuantity": 0, + "pretaxStandardRate": 0.138 + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetForBillingPeriod.json new file mode 100644 index 000000000000..661492c15664 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/PriceSheetForBillingPeriod.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201801" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default", + "name": "default", + "type": "Microsoft.Consumption/pricesheets", + "properties": { + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31", + "pricesheets": [ + { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "meterId": "00000000-0000-0000-0000-000000000000", + "unitOfMeasure": "100 Hours", + "includedQuantity": 100, + "partNumber": "XX-11110", + "unitPrice": 0.00328, + "currencyCode": "EUR", + "offerId": "OfferId 1" + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json new file mode 100644 index 000000000000..f759fea1fafe --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationDetails/20171129", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171129", + "type": "Microsoft.Consumption/reservationDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2017-11-29T00:00:00Z", + "skuName": "Standard_D2_v2", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/wvn-sql/providers/microsoft.compute/virtualmachines/abc-sql2014sp33", + "totalReservedQuantity": 1.000000000000000, + "reservedHours": 24.000000000000000, + "usedHours": 24.000000000000000, + "instanceFlexibilityGroup": "DSv2 Series", + "instanceFlexibilityRatio": "0.25" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json new file mode 100644 index 000000000000..3fab16efdadb --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1", + "name": "reservationDetails_Id1", + "type": "Microsoft.Consumption/reservationDetails", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2017-11-30T00:00:00-08:00", + "skuName": "Standard_D2s_v3", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1", + "totalReservedQuantity": 0, + "reservedHours": 48, + "usedHours": 0.6, + "instanceFlexibilityGroup": "DSv3 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileId.json new file mode 100644 index 000000000000..325e2ba27f02 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileId.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "startDate": "2019-09-01", + "endDate": "2019-10-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1", + "name": "reservationDetails_Id1", + "type": "Microsoft.Consumption/reservationDetails", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2019-09-30T00:00:00-08:00", + "skuName": "Standard_D2s_v3", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1", + "totalReservedQuantity": 0, + "reservedHours": 48, + "usedHours": 0.6, + "instanceFlexibilityGroup": "DSv3 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json new file mode 100644 index 000000000000..e8f3dd2d970d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationDetails/20171129", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171129", + "type": "Microsoft.Consumption/reservationDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2017-11-29T00:00:00Z", + "skuName": "Standard_D2_v2", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/wvn-sql/providers/microsoft.compute/virtualmachines/wvn-sql2014sp33", + "totalReservedQuantity": 1.000000000000000, + "reservedHours": 24.000000000000000, + "usedHours": 24.000000000000000, + "kind": "Reservation", + "instanceFlexibilityGroup": "D2v2 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingAccount.json new file mode 100644 index 000000000000..f33b47e5d4b6 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingAccount.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "billingAccount/123456/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "legacy", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 12.0785105, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 11.4899644807748, + "netSavings": 0.588546019225182, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": "Last7Days", + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1_v2", + "recommendedQuantityNormalized": 1, + "skuProperties": [ + { + "name": "Cores", + "value": "1" + }, + { + "name": "Ram", + "value": "1" + } + ] + } + }, + { + "id": "billingAccount/123456/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "legacy", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 10.0785105, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 13.48, + "netSavings": 0.68, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": "Last7Days", + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1", + "recommendedQuantityNormalized": 1.2, + "skuProperties": [ + { + "name": "SkuDisplayName", + "value": "B" + }, + { + "name": "CPU", + "value": "1" + } + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D&" + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingProfile.json new file mode 100644 index 000000000000..ae8a3c2fabb3 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsByBillingProfile.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "modern", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": { + "currency": "USD", + "value": 1.4749000882 + }, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": { + "currency": "USD", + "value": 1.07665757024628 + }, + "netSavings": { + "currency": "USD", + "value": 0.39824251795372 + }, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": "Last7Days", + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1_v2", + "recommendedQuantityNormalized": 1, + "skuProperties": [ + { + "name": "Cores", + "value": "1" + }, + { + "name": "Ram", + "value": "1" + } + ] + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "modern", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": { + "currency": "USD", + "value": 1.4896 + }, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": { + "currency": "USD", + "value": 1.08265753424628 + }, + "netSavings": { + "currency": "USD", + "value": 0.40694246575372 + }, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": "Last7Days", + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1", + "recommendedQuantityNormalized": 1.2, + "skuProperties": [ + { + "name": "SkuDisplayName", + "value": "B" + }, + { + "name": "CPU", + "value": "1" + } + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D&" + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsBySubscription.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsBySubscription.json new file mode 100644 index 000000000000..fc79284bf7dd --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsBySubscription.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1", + "name": "reservationRecommendations1", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 4.634521202630137, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2", + "name": "reservationRecommendations2", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P3Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 7.2893157231780812, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D&" + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json new file mode 100644 index 000000000000..ee9f49e2cc5b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "$filter": "properties/scope eq 'Single' AND properties/lookBackPeriod eq 'Last7Days'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1", + "name": "reservationRecommendations1", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 4.634521202630137, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single", + "skuProperties": [ + { + "name": "Cores", + "value": "1" + }, + { + "name": "Ram", + "value": "1" + } + ] + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2", + "name": "reservationRecommendations2", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P3Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 7.2893157231780812, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single", + "skuProperties": [ + { + "name": "SkuDisplayName", + "value": "B" + }, + { + "name": "CPU", + "value": "1" + } + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2019-10-01&$filter=properties/scope+eq+'Single'+AND+properties/lookBackPeriod+eq+'Last7Days'&$skiptoken=AQAAAA%3D%3D&" + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json new file mode 100644 index 000000000000..89cabe7ebef4 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "grain": "daily", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json new file mode 100644 index 000000000000..05d17eec72c4 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "grain": "daily", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json new file mode 100644 index 000000000000..d9f9a88a373b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "grain": "daily", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json new file mode 100644 index 000000000000..197a751de0b1 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "grain": "daily", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthly.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthly.json new file mode 100644 index 000000000000..24e73670f90a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthly.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "grain": "monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json new file mode 100644 index 000000000000..e301b98fe19f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "grain": "monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json new file mode 100644 index 000000000000..72ecb47a78d1 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "grain": "monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithReservationId.json new file mode 100644 index 000000000000..afa98c33cce8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithReservationId.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "grain": "monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json new file mode 100644 index 000000000000..8e750c729526 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "123456", + "$filter": "properties/usageDate ge '2019-09-09' AND properties/usageDate le '2019-09-10'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/billingAccounts/123456/providers/Microsoft.Consumption/reservationtransactions/201909091919", + "name": "201909091919", + "type": "Microsoft.Consumption/reservationTransactions", + "tags": {}, + "properties": { + "eventDate": "2019-09-09T19:19:04Z", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "description": "Standard_DS1_v2 westus 1 Year", + "eventType": "Cancel", + "quantity": 1, + "amount": -21.000000000000000, + "currency": "USD", + "reservationOrderName": "Transaction-DS1_v2", + "purchasingEnrollment": "123456", + "armSkuName": "Standard_DS1_v2", + "term": "P1Y", + "region": "westus", + "purchasingSubscriptionGuid": "11111111-1111-1111-1111-11111111111", + "purchasingSubscriptionName": "Infrastructure Subscription", + "accountName": "Microsoft Infrastructure", + "accountOwnerEmail": "admin@microsoft.com", + "departmentName": "Unassigned", + "costCenter": "", + "currentEnrollment": "123456" + } + }, + { + "id": "/billingAccounts/123456/providers/Microsoft.Consumption/reservationtransactions/201909091919", + "name": "201909091919", + "type": "Microsoft.Consumption/reservationTransactions", + "tags": {}, + "properties": { + "eventDate": "2019-09-09T19:19:04Z", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "description": "Standard_DS1_v2 westus 1 Year", + "eventType": "Purchase", + "quantity": 1, + "amount": 21.000000000000000, + "currency": "USD", + "reservationOrderName": "Transaction-DS1_v2", + "purchasingEnrollment": "123456", + "armSkuName": "Standard_DS1_v2", + "term": "P1Y", + "region": "westus", + "purchasingSubscriptionGuid": "11111111-1111-1111-1111-11111111111", + "purchasingSubscriptionName": "Infrastructure Subscription", + "accountName": "Microsoft Infrastructure", + "accountOwnerEmail": "admin@microsoft.com", + "departmentName": "Unassigned", + "costCenter": "", + "currentEnrollment": "123456" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Tags.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Tags.json new file mode 100644 index 000000000000..cd875d621f06 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/Tags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "billingAccountId": "12345", + "scope": "providers/Microsoft.CostManagement/billingAccounts/1234" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/tags1", + "name": "tags1", + "type": "Microsoft.Consumption/tags", + "eTag": "\"1d34d012214157f\"", + "properties": { + "tags": [ + { + "key": "Department" + }, + { + "key": "CostCenter" + }, + { + "key": "Portal" + }, + { + "key": "OrgName" + }, + { + "key": "Namespace" + }, + { + "key": "resourceType" + }, + { + "key": "Subsystem" + }, + { + "key": "Environment" + }, + { + "key": "clusterName" + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsExpand.json new file mode 100644 index 000000000000..c6ec98666b6c --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsExpand.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201903", + "$expand": "meterDetails,additionalInfo", + "$filter": "tags eq 'dev:tools'", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": { + "meterName": "Data Transfer Out (GB)", + "meterCategory": "Networking", + "meterSubCategory": "ExpressRoute", + "unitOfMeasure": "GB", + "serviceFamily": "Compute" + }, + "quantity": 0.8234, + "effectivePrice": 0.010464556322455, + "cost": 0.000342194841184, + "unitPrice": 3.54, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "frequency": "UsageBased", + "additionalInfo": "{\"MyType\":\"\",\"ServiceType\":\"\",\"VMName\":\"\",\"UsageType\":\"MyUsage\"}" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsList.json new file mode 100644 index 000000000000..3cf004f312c5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsList.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693034210767, + "cost": 0.000001980949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "frequency": "UsageBased" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByBillingAccount.json new file mode 100644 index 000000000000..3f68c1ce0026 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByBillingAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByDepartment.json new file mode 100644 index 000000000000..2bfc080688db --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByDepartment.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/Departments/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/Departments/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByEnrollmentAccount.json new file mode 100644 index 000000000000..c80573d483a4 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByEnrollmentAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/EnrollmentAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/EnrollmentAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingAccount.json new file mode 100644 index 000000000000..95287cb6774b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingAccount.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-10-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2019-10-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2019-10-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingProfile.json new file mode 100644 index 000000000000..29bad2b24732 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCABillingProfile.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2468" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2468/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-10-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2019-10-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2019-10-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCACustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCACustomer.json new file mode 100644 index 000000000000..b61daa293a20 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCACustomer.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-10-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2019-10-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2019-10-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCAInvoiceSection.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCAInvoiceSection.json new file mode 100644 index 000000000000..e5e6b6db2571 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMCAInvoiceSection.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/98765" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/98765/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-10-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2019-10-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2019-10-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByManagementGroup.json new file mode 100644 index 000000000000..af2e682ed82e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByManagementGroup.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201903", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + }, + { + "id": "/scope/providers/Microsoft.Billing/billingPeriods/20180801/providers/Microsoft.Consumption/usageDetails/usageDetails_Id2", + "name": "usageDetails_Id2", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 2", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 2", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 2", + "partNumber": "Part Number 2", + "meterId": "11111111-1111-1111-1111-111111111111", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 2/providers/Microsoft.Storage/storageAccounts/Resource Name 2", + "resourceName": "Resource Name 2", + "invoiceSection": "Invoice Section 2", + "costCenter": "DEV", + "resourceGroup": "Resource Group 2", + "offerId": "Offer Id 2", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricActualCost.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricActualCost.json new file mode 100644 index 000000000000..8f58c80235aa --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricActualCost.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "metric": "actualcost", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693055510767, + "cost": 0.000001968949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricAmortizedCost.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricAmortizedCost.json new file mode 100644 index 000000000000..38e6df753735 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricAmortizedCost.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "metric": "amortizedcost", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693055510767, + "cost": 0.000001968949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "frequency": "UsageBased" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricUsage.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricUsage.json new file mode 100644 index 000000000000..0102599e6290 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListByMetricUsage.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "metric": "usage", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693055510767, + "cost": 0.000001968949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListFilterByTag.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListFilterByTag.json new file mode 100644 index 000000000000..f92602754f97 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListFilterByTag.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "$filter": "tags eq 'dev:tools'", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriod.json new file mode 100644 index 000000000000..0c2a7f22050e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriod.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json new file mode 100644 index 000000000000..23370fddf66d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByDepartment.json new file mode 100644 index 000000000000..b01c990c8d48 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByDepartment.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/Departments/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/Departments/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json new file mode 100644 index 000000000000..a86332bc4d64 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/EnrollmentAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/EnrollmentAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json new file mode 100644 index 000000000000..0680b18d11a8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201903", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + }, + { + "id": "/scope/providers/Microsoft.Billing/billingPeriods/billingPeriodName/providers/Microsoft.Consumption/usageDetails/usageDetails_Id2", + "name": "usageDetails_Id2", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 2", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 2", + "accountName": "Account Name 2", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 2", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 2", + "partNumber": "Part Number 2", + "meterId": "11111111-1111-1111-1111-111111111111", + "meterDetails": null, + "quantity": 0.4759, + "effectivePrice": 0.073488920944598, + "cost": 0.000821821271948, + "unitPrice": 5.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 2/providers/Microsoft.Storage/storageAccounts/Resource Name 2", + "resourceName": "Resource Name 2", + "invoiceSection": "Invoice Section 2", + "costCenter": "DEV", + "resourceGroup": "Resource Group 2", + "offerId": "Offer Id 2", + "isAzureCreditEligible": false, + "chargeType": "UnusedReservation" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 9537f93c506c..93f6d9c1421c 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -26,18 +26,27 @@ These are the global settings for the Consumption API. ``` yaml openapi-type: arm -tag: package-2019-06 +tag: package-2019-10 ``` +### Tag: package-2019-10 + +These settings apply only when `--tag=package-2019-10` is specified on the command line. + +```yaml $(tag) == 'package-2019-10' +input-file: + - Microsoft.Consumption/stable/2019-10-01/consumption.json +``` ### Tag: package-2019-06 These settings apply only when `--tag=package-2019-06` is specified on the command line. -```yaml $(tag) == 'package-2019-06' +``` yaml $(tag) == 'package-2019-06' input-file: - Microsoft.Consumption/stable/2019-06-01/consumption.json ``` + ### Tag: package-2019-05 These settings apply only when `--tag=package-2019-05` is specified on the command line. From b51344bc3d2022a2ecacd5297a6ad1553418dd51 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 18 Oct 2019 06:18:37 +0000 Subject: [PATCH 24/54] regenerated all-api-versions --- specification/consumption/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 93f6d9c1421c..affb8e093e93 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -416,6 +416,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Consumption/stable/2019-10-01/consumption.json - $(this-folder)/Microsoft.Consumption/stable/2019-06-01/consumption.json - $(this-folder)/Microsoft.Consumption/stable/2019-05-01/consumption.json - $(this-folder)/Microsoft.Consumption/preview/2019-05-01-preview/consumption.json From d88d1065c405419825995f6120eb41c4e8d7696f Mon Sep 17 00:00:00 2001 From: Phoenix He Date: Sat, 19 Oct 2019 09:17:39 +0800 Subject: [PATCH 25/54] Fix typo in readme.go for web (#7547) --- specification/web/resource-manager/readme.go.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/web/resource-manager/readme.go.md b/specification/web/resource-manager/readme.go.md index 5b4ff553def4..3ea00b2ca37c 100644 --- a/specification/web/resource-manager/readme.go.md +++ b/specification/web/resource-manager/readme.go.md @@ -24,7 +24,7 @@ batch: These settings apply only when `--tag=package-2019-08 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -``` yaml $(tag) == 'package-2018-02' && $(go) +``` yaml $(tag) == 'package-2019-08' && $(go) output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-08-01/$(namespace) ``` From 4a26ffa7e7042d4a16d916188bef8091456b6ad0 Mon Sep 17 00:00:00 2001 From: Hyonho Lee Date: Sun, 20 Oct 2019 16:55:20 -0700 Subject: [PATCH 26/54] Compute 2019-07-01 version (#7094) * Copy compute.json and runCommands.json from 2019-03-01 to 2019-07-01 * changes to add publicIpAddressVersion field (#7173) * temp fix * Adding new VirtualMachines.POST.Reapply action to compute api-version: 2019-07-01. Updating parameter info for skus api-version:2019-04-01.. (#7167) * Copy compute.json and runCommands.json from 2019-03-01 to 2019-07-01 * Adding new VirtualMachines.POST.Reapply action. * Adding example for POST Reapply virtual machine action. * Adding missing $filter parameter documentation to skus.json for api-version: 2019-04-01. * Unexpected change. * Added DiskEnryptionSet property in the managed disk parameters for the VM/VMSS (#7293) * updated swagger * updated swagger * Removed example files which are not relevant and added links to examples for newly added property * fixed the syntax error * updated swagger * fixed the sytax error * Added examples for the DiskEncryptionSet property (#7318) * updated swagger * updated swagger * Removed example files which are not relevant and added links to examples for newly added property * fixed the syntax error * updated swagger * fixed the sytax error * updated code * udpated swagger to create DiskEncryptionSet as new property to initiate * Resolved conflicts with DiskRP definition names for the DiskEncryptionSet (#7340) * updated swagger * updated swagger * Removed example files which are not relevant and added links to examples for newly added property * fixed the syntax error * updated swagger * fixed the sytax error * updated code * udpated swagger to create DiskEncryptionSet as new property to initiate * resolved conflicts and updated swagger due to conflict in the DiskRP definitions * Disk 2019-07-01 version (#7280) * Copy compute.json and runCommands.json from 2019-03-01 to 2019-07-01 * changes to add publicIpAddressVersion field (#7173) * Add diskEncryptionSet in swagger compute-2019-07 * resolve semantic conflicts * Fix model conflicts * Resolve readme * Resolve readme * Resolve description conflicts * Improve description * Fix spell error * Add some examples. * fix model error * Update examples (#7429) * Copy compute.json and runCommands.json from 2019-03-01 to 2019-07-01 * changes to add publicIpAddressVersion field (#7173) * Add diskEncryptionSet in swagger compute-2019-07 * resolve semantic conflicts * Fix model conflicts * Resolve readme * Resolve readme * Resolve description conflicts * Improve description * Fix spell error * Add some examples. * fix model error * Update examples * Add extension API for VMScaleset VMs (#7407) * add extension Api * change operationID * update description * update description * add examples * add missing / * add missing / in examples * add new line * remove unnecessary file * add reference examples * fix model validation failures * remove provisioning state from params * remove unnecessary param * fix Delete example * updating the description of storage account id (#7385) * Private temp (#7456) * Copy compute.json and runCommands.json from 2019-03-01 to 2019-07-01 * changes to add publicIpAddressVersion field (#7173) * Add diskEncryptionSet in swagger compute-2019-07 * resolve semantic conflicts * Fix model conflicts * Resolve readme * Resolve readme * Resolve description conflicts * Improve description * Fix spell error * Add some examples. * fix model error * Update examples * Remove uniqueId in swagger * Remove required for diskEncryptionSetId * cherry pick code owner change to compute-2019-07 (#7480) * Iops, throughput and instance view (#7499) * Swagger changes for IOPS, Bulk InstanceView, documentation for GETVM and InstanceView * Fixed typos * Updated samples * Update 2019-07 from latest 2019-03 update. * Update swagger (#7510) * Copy compute.json and runCommands.json from 2019-03-01 to 2019-07-01 * changes to add publicIpAddressVersion field (#7173) * Add diskEncryptionSet in swagger compute-2019-07 * resolve semantic conflicts * Fix model conflicts * Resolve readme * Resolve readme * Resolve description conflicts * Improve description * Fix spell error * Add some examples. * fix model error * Update examples * Remove uniqueId in swagger * Remove required for diskEncryptionSetId * Update principalId and tenantId to be readonly * small space fix * add update property (#7514) * Sync with the latest 2019-03-01 version to 2019-07-01 version of compute. * suppress LintDiff validation error. * Add default responses to new APIs. --- .../stable/2017-03-30/compute.json | 5 + .../ListAvailabilitySetsInASubscription.json | 65 +- .../stable/2017-12-01/compute.json | 5 + .../ListAvailabilitySetsInASubscription.json | 65 +- .../examples/VirtualMachineRunCommandGet.json | 4 +- .../VirtualMachineRunCommandList.json | 20 +- .../stable/2018-04-01/compute.json | 5 + .../ListAvailabilitySetsInASubscription.json | 65 +- .../examples/VirtualMachineRunCommandGet.json | 4 +- .../VirtualMachineRunCommandList.json | 20 +- .../stable/2018-06-01/compute.json | 5 + .../ListAvailabilitySetsInASubscription.json | 65 +- .../examples/VirtualMachineRunCommandGet.json | 4 +- .../VirtualMachineRunCommandList.json | 20 +- .../stable/2018-10-01/compute.json | 5 + .../ListAvailabilitySetsInASubscription.json | 65 +- .../examples/VirtualMachineRunCommandGet.json | 4 +- .../VirtualMachineRunCommandList.json | 20 +- .../stable/2019-03-01/compute.json | 5 + .../ListAvailabilitySetsInASubscription.json | 65 +- .../examples/VirtualMachineRunCommandGet.json | 4 +- .../VirtualMachineRunCommandList.json | 20 +- .../ListAvailableResourceSkusForARegion.json | 190 + .../stable/2019-04-01/skus.json | 10 + .../stable/2019-07-01/compute.json | 10301 ++++++++++++++++ .../stable/2019-07-01/disk.json | 1945 +++ ...eSetFromAnUnmanagedGeneralizedOsImage.json | 202 + ...geVmFromAnUnmanagedGeneralizedOsImage.json | 145 + .../examples/CreateADiskEncryptionSet.json | 60 + .../CreateAManagedDiskByCopyingASnapshot.json | 45 + ...managedBlobFromADifferentSubscription.json | 48 + ...nUnmanagedBlobFromTheSameSubscription.json | 45 + .../CreateAManagedDiskFromAPlatformImage.json | 54 + ...AManagedDiskFromAnExistingManagedDisk.json | 45 + .../examples/CreateAManagedUploadDisk.json | 45 + ...formImageScaleSetWithUnmanagedOsDisks.json | 222 + ...ormImageVmWithUnmanagedOsAndDataDisks.json | 213 + .../CreateAScaleSetFromACustomImage.json | 204 + ...ateAScaleSetWithAMarketplaceImagePlan.json | 230 + ...ScaleSetWithAnAzureApplicationGateway.json | 230 + ...reateAScaleSetWithAnAzureLoadBalancer.json | 251 + .../CreateAScaleSetWithAutomaticRepairs.json | 231 + .../CreateAScaleSetWithBootDiagnostics.json | 233 + .../CreateAScaleSetWithDiffOsDisk.json | 239 + ...teAScaleSetWithEmptyDataDisksOnEachVm.json | 270 + ...teAScaleSetWithPasswordAuthentication.json | 215 + .../CreateAScaleSetWithPremiumStorage.json | 215 + .../CreateAScaleSetWithSshAuthentication.json | 239 + ...SetWithTerminateScheduledEventEnabled.json | 233 + ...reateAScaleSetWithVMsInDifferentZones.json | 284 + ...ScalesetWithDiskEncryptionSetResource.json | 255 + ...managedBlobFromADifferentSubscription.json | 48 + ...nUnmanagedBlobFromTheSameSubscription.json | 45 + ...CreateASnapshotFromAnExistingSnapshot.json | 45 + .../examples/CreateAVmFromACustomImage.json | 144 + .../CreateAVmInAnAvailabilitySet.json | 162 + .../examples/CreateAVmWithADiffOsDisk.json | 177 + .../CreateAVmWithAMarketplaceImagePlan.json | 168 + .../CreateAVmWithBootDiagnostics.json | 171 + ...reateAVmWithDiskEncryptionSetResource.json | 229 + .../examples/CreateAVmWithEmptyDataDisks.json | 205 + .../CreateAVmWithPasswordAuthentication.json | 153 + .../examples/CreateAVmWithPremiumStorage.json | 153 + .../CreateAVmWithSshAuthentication.json | 177 + .../examples/CreateAnAvailabilitySet.json | 32 + .../examples/CreateAnEmptyManagedDisk.json | 45 + .../examples/CreateAnImageFromABlob.json | 62 + ...AnImageFromABlobWithDiskEncryptionSet.json | 71 + .../CreateAnImageFromAManagedDisk.json | 68 + ...FromAManagedDiskWithDiskEncryptionSet.json | 77 + .../examples/CreateAnImageFromASnapshot.json | 68 + ...ageFromASnapshotWithDiskEncryptionSet.json | 77 + .../examples/CreateAnImageFromAVM.json | 68 + ...AnImageThatIncludesADataDiskFromABlob.json | 78 + ...ThatIncludesADataDiskFromAManagedDisk.json | 90 + ...ageThatIncludesADataDiskFromASnapshot.json | 90 + .../CreateOrUpdateADedicatedHost.json | 60 + .../CreateOrUpdateADedicatedHostGroup.json | 57 + ...reateOrUpdateAProximityPlacementGroup.json | 38 + ...ateVirtualMachineScaleSetVMExtensions.json | 54 + .../examples/DeleteADiskEncryptionSet.json | 13 + .../DeleteAProximityPlacementGroup.json | 12 + ...eteVirtualMachineScaleSetVMExtensions.json | 15 + .../examples/GetADedicatedHost.json | 58 + .../examples/GetADedicatedHostGroup.json | 33 + .../examples/GetAProximityPlacementGroup.json | 37 + ...GetInformationAboutADiskEncryptionSet.json | 35 + .../GetInformationAboutAManagedDisk.json | 57 + .../GetInformationAboutASnapshot.json | 53 + .../examples/GetInformationAboutAnImage.json | 49 + .../examples/GetVirtualMachine.json | 120 + .../GetVirtualMachineInstanceView.json | 91 + ...GetVirtualMachineScaleSetVMExtensions.json | 28 + .../ListAvailabilitySetsInASubscription.json | 85 + .../ListAvailableVmSizes_VirtualMachines.json | 32 + ...istDiskEncryptionSetsInAResourceGroup.json | 62 + ...ListDiskEncryptionSetsInASubscription.json | 61 + .../examples/ListImagesInAResourceGroup.json | 51 + .../examples/ListImagesInASubscription.json | 50 + .../ListManagedDisksInAResourceGroup.json | 120 + .../ListManagedDisksInASubscription.json | 119 + ...ximityPlacementGroupsInAResourceGroup.json | 41 + ...oximityPlacementGroupsInASubscription.json | 40 + .../ListSnapshotsInAResourceGroup.json | 57 + .../ListSnapshotsInASubscription.json | 99 + ...istVirtualMachineScaleSetVMExtensions.json | 45 + ...tualMachinesInASubscriptionByLocation.json | 127 + .../LogAnalyticsRequestRateByInterval.json | 24 + .../LogAnalyticsThrottledRequests.json | 24 + .../PatchAProximityPlacementGroup.json | 26 + .../examples/ReapplyVirtualMachine.json | 12 + .../examples/ReimageVirtualMachine.json | 15 + .../examples/UpdateADiskEncryptionSet.json | 68 + ...tachDataDiskUsingToBeDetachedProperty.json | 208 + ...ateVirtualMachineScaleSetVMExtensions.json | 37 + .../VMScaleSetExtensionRollingUpgrade.json | 12 + .../examples/VirtualMachineRunCommand.json | 34 + .../examples/VirtualMachineRunCommandGet.json | 38 + .../VirtualMachineRunCommandList.json | 85 + .../stable/2019-07-01/gallery.json | 2 +- .../stable/2019-07-01/runCommands.json | 467 + .../compute/resource-manager/readme.md | 40 +- 122 files changed, 22886 insertions(+), 147 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/disk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateADiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByCopyingASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAPlatformImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedUploadDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetFromACustomImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAutomaticRepairs.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithBootDiagnostics.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithDiffOsDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPasswordAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPremiumStorage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithSshAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithVMsInDifferentZones.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotFromAnExistingSnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmFromACustomImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmInAnAvailabilitySet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithADiffOsDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithAMarketplaceImagePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithBootDiagnostics.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithDiskEncryptionSetResource.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithEmptyDataDisks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPasswordAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPremiumStorage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithSshAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnAvailabilitySet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnEmptyManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlob.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAVM.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHost.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHostGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteADiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHost.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHostGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutADiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAnImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineInstanceView.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailabilitySetsInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailableVmSizes_VirtualMachines.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachinesInASubscriptionByLocation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsRequestRateByInterval.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsThrottledRequests.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/PatchAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReapplyVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReimageVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateADiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VMScaleSetExtensionRollingUpgrade.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommand.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandGet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandList.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/runCommands.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json index e3d283c379b6..3220166fd21f 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json @@ -196,6 +196,11 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } } } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/ListAvailabilitySetsInASubscription.json index 9d05f5b7b7f6..996c3b390765 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/ListAvailabilitySetsInASubscription.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/ListAvailabilitySetsInASubscription.json @@ -1,40 +1,79 @@ { "parameters": { "subscriptionId": "{subscriptionId}", - "api-version": "2017-03-30" + "api-version": "2017-03-30", + "$expand": "virtualMachines\\$ref" }, "responses": { "200": { "body": { "value": [ { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", "properties": { "platformUpdateDomainCount": 5, - "platformFaultDomainCount": 2 + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "centralus", - "tags": { - "{tagName}": "{tagValue}" + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", "sku": { - "name": "Aligned" + "name": "Classic" } }, { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, "properties": { - "platformUpdateDomainCount": 3, - "platformFaultDomainCount": 2 + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "westus", + "location": "westcentralus", "tags": { "{tagName}": "{tagValue}" }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, "sku": { "name": "Classic" } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index cd898877ad80..c2a57fceccbe 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -267,6 +267,11 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } } } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/ListAvailabilitySetsInASubscription.json index fc27c0283bd8..d5bb9e943b6d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/ListAvailabilitySetsInASubscription.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/ListAvailabilitySetsInASubscription.json @@ -1,40 +1,79 @@ { "parameters": { "subscriptionId": "{subscriptionId}", - "api-version": "2017-12-01" + "api-version": "2017-12-01", + "$expand": "virtualMachines\\$ref" }, "responses": { "200": { "body": { "value": [ { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", "properties": { "platformUpdateDomainCount": 5, - "platformFaultDomainCount": 2 + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "centralus", - "tags": { - "{tagName}": "{tagValue}" + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", "sku": { - "name": "Aligned" + "name": "Classic" } }, { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, "properties": { - "platformUpdateDomainCount": 3, - "platformFaultDomainCount": 2 + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "westus", + "location": "westcentralus", "tags": { "{tagName}": "{tagValue}" }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, "sku": { "name": "Classic" } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandGet.json index 43018b699255..4c861d859678 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandGet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandGet.json @@ -19,12 +19,12 @@ { "name": "arg1", "type": "string", - "value": "value1" + "defaultValue": "value1" }, { "name": "arg2", "type": "string", - "value": "value2" + "defaultValue": "value2" } ], "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandList.json index fbd040f32504..e79d8c93b6af 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandList.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/VirtualMachineRunCommandList.json @@ -9,70 +9,70 @@ "body": { "value": [ { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableRemotePS", "osType": "Windows", "label": "Enable remote PowerShell", "description": "Configure the machine to enable remote PowerShell." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "IPConfig", "osType": "Windows", "label": "List IP configuration", "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunPowerShellScript", "osType": "Windows", "label": "Executes a PowerShell script", "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunShellScript", "osType": "Linux", "label": "Executes a Linux shell script", "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ifconfig", "osType": "Linux", "label": "List network configuration", "description": "Get the configuration of all network interfaces." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableAdminAccount", "osType": "Windows", "label": "Enable administrator account", "description": "Checks if the local Administrator account is disabled, and if so enables it." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetAccountPassword", "osType": "Windows", "label": "Reset built-in Administrator account password", "description": "Reset built-in Administrator account password." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RDPSettings", "osType": "Windows", "label": "Verify RDP Listener Settings", "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "SetRDPPort", "osType": "Windows", "label": "Set Remote Desktop port", "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetRDPCert", "osType": "Windows", "label": "Restore RDP Authentication mode to defaults", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json index 35d00ec6a20b..7ff9b80a8217 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json @@ -264,6 +264,11 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } } } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListAvailabilitySetsInASubscription.json index 12fdbbabc24a..29bb119ff690 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListAvailabilitySetsInASubscription.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListAvailabilitySetsInASubscription.json @@ -1,40 +1,79 @@ { "parameters": { "subscriptionId": "{subscriptionId}", - "api-version": "2018-04-01" + "api-version": "2018-04-01", + "$expand": "virtualMachines\\$ref" }, "responses": { "200": { "body": { "value": [ { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", "properties": { "platformUpdateDomainCount": 5, - "platformFaultDomainCount": 2 + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "centralus", - "tags": { - "{tagName}": "{tagValue}" + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", "sku": { - "name": "Aligned" + "name": "Classic" } }, { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, "properties": { - "platformUpdateDomainCount": 3, - "platformFaultDomainCount": 2 + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "westus", + "location": "westcentralus", "tags": { "{tagName}": "{tagValue}" }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, "sku": { "name": "Classic" } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandGet.json index 43cfc334537e..2dbb2aa4b669 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandGet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandGet.json @@ -19,12 +19,12 @@ { "name": "arg1", "type": "string", - "value": "value1" + "defaultValue": "value1" }, { "name": "arg2", "type": "string", - "value": "value2" + "defaultValue": "value2" } ], "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandList.json index 49d1d30d8f14..6c7b4fa34bac 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandList.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/VirtualMachineRunCommandList.json @@ -9,70 +9,70 @@ "body": { "value": [ { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableRemotePS", "osType": "Windows", "label": "Enable remote PowerShell", "description": "Configure the machine to enable remote PowerShell." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "IPConfig", "osType": "Windows", "label": "List IP configuration", "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunPowerShellScript", "osType": "Windows", "label": "Executes a PowerShell script", "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunShellScript", "osType": "Linux", "label": "Executes a Linux shell script", "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ifconfig", "osType": "Linux", "label": "List network configuration", "description": "Get the configuration of all network interfaces." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableAdminAccount", "osType": "Windows", "label": "Enable administrator account", "description": "Checks if the local Administrator account is disabled, and if so enables it." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetAccountPassword", "osType": "Windows", "label": "Reset built-in Administrator account password", "description": "Reset built-in Administrator account password." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RDPSettings", "osType": "Windows", "label": "Verify RDP Listener Settings", "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "SetRDPPort", "osType": "Windows", "label": "Set Remote Desktop port", "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetRDPCert", "osType": "Windows", "label": "Restore RDP Authentication mode to defaults", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json index 6445e9d30625..93874efd9f87 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json @@ -264,6 +264,11 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } } } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/ListAvailabilitySetsInASubscription.json index bcf40066ac4b..217c0f707840 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/ListAvailabilitySetsInASubscription.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/ListAvailabilitySetsInASubscription.json @@ -1,40 +1,79 @@ { "parameters": { "subscriptionId": "{subscriptionId}", - "api-version": "2018-06-01" + "api-version": "2018-06-01", + "$expand": "virtualMachines\\$ref" }, "responses": { "200": { "body": { "value": [ { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", "properties": { "platformUpdateDomainCount": 5, - "platformFaultDomainCount": 2 + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "centralus", - "tags": { - "{tagName}": "{tagValue}" + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", "sku": { - "name": "Aligned" + "name": "Classic" } }, { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, "properties": { - "platformUpdateDomainCount": 3, - "platformFaultDomainCount": 2 + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "westus", + "location": "westcentralus", "tags": { "{tagName}": "{tagValue}" }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, "sku": { "name": "Classic" } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandGet.json index 033cce1df40b..965cf747fc33 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandGet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandGet.json @@ -19,12 +19,12 @@ { "name": "arg1", "type": "string", - "value": "value1" + "defaultValue": "value1" }, { "name": "arg2", "type": "string", - "value": "value2" + "defaultValue": "value2" } ], "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandList.json index ff6bebf28b12..d6f72c39c771 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandList.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/examples/VirtualMachineRunCommandList.json @@ -9,70 +9,70 @@ "body": { "value": [ { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableRemotePS", "osType": "Windows", "label": "Enable remote PowerShell", "description": "Configure the machine to enable remote PowerShell." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "IPConfig", "osType": "Windows", "label": "List IP configuration", "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunPowerShellScript", "osType": "Windows", "label": "Executes a PowerShell script", "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunShellScript", "osType": "Linux", "label": "Executes a Linux shell script", "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ifconfig", "osType": "Linux", "label": "List network configuration", "description": "Get the configuration of all network interfaces." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableAdminAccount", "osType": "Windows", "label": "Enable administrator account", "description": "Checks if the local Administrator account is disabled, and if so enables it." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetAccountPassword", "osType": "Windows", "label": "Reset built-in Administrator account password", "description": "Reset built-in Administrator account password." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RDPSettings", "osType": "Windows", "label": "Verify RDP Listener Settings", "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "SetRDPPort", "osType": "Windows", "label": "Set Remote Desktop port", "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetRDPCert", "osType": "Windows", "label": "Restore RDP Authentication mode to defaults", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json index 58167b80e75b..2427b20cd5d3 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json @@ -264,6 +264,11 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } } } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/ListAvailabilitySetsInASubscription.json index b5cc831927b5..bd9cb9e4e140 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/ListAvailabilitySetsInASubscription.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/ListAvailabilitySetsInASubscription.json @@ -1,40 +1,79 @@ { "parameters": { "subscriptionId": "{subscriptionId}", - "api-version": "2018-10-01" + "api-version": "2018-10-01", + "$expand": "virtualMachines\\$ref" }, "responses": { "200": { "body": { "value": [ { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", "properties": { "platformUpdateDomainCount": 5, - "platformFaultDomainCount": 2 + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "centralus", - "tags": { - "{tagName}": "{tagValue}" + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", "sku": { - "name": "Aligned" + "name": "Classic" } }, { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, "properties": { - "platformUpdateDomainCount": 3, - "platformFaultDomainCount": 2 + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "westus", + "location": "westcentralus", "tags": { "{tagName}": "{tagValue}" }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, "sku": { "name": "Classic" } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandGet.json index b15195ff297d..ec10bdcb35ff 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandGet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandGet.json @@ -19,12 +19,12 @@ { "name": "arg1", "type": "string", - "value": "value1" + "defaultValue": "value1" }, { "name": "arg2", "type": "string", - "value": "value2" + "defaultValue": "value2" } ], "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandList.json index 6b20efeac977..316ad384a014 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandList.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/examples/VirtualMachineRunCommandList.json @@ -9,70 +9,70 @@ "body": { "value": [ { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableRemotePS", "osType": "Windows", "label": "Enable remote PowerShell", "description": "Configure the machine to enable remote PowerShell." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "IPConfig", "osType": "Windows", "label": "List IP configuration", "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunPowerShellScript", "osType": "Windows", "label": "Executes a PowerShell script", "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunShellScript", "osType": "Linux", "label": "Executes a Linux shell script", "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ifconfig", "osType": "Linux", "label": "List network configuration", "description": "Get the configuration of all network interfaces." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableAdminAccount", "osType": "Windows", "label": "Enable administrator account", "description": "Checks if the local Administrator account is disabled, and if so enables it." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetAccountPassword", "osType": "Windows", "label": "Reset built-in Administrator account password", "description": "Reset built-in Administrator account password." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RDPSettings", "osType": "Windows", "label": "Verify RDP Listener Settings", "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "SetRDPPort", "osType": "Windows", "label": "Set Remote Desktop port", "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetRDPCert", "osType": "Windows", "label": "Restore RDP Authentication mode to defaults", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 48ec9675219d..74ce6d52a326 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -264,6 +264,11 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } } } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/ListAvailabilitySetsInASubscription.json index f83d4692138d..d7c2558571ef 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/ListAvailabilitySetsInASubscription.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/ListAvailabilitySetsInASubscription.json @@ -1,40 +1,79 @@ { "parameters": { "subscriptionId": "{subscriptionId}", - "api-version": "2019-03-01" + "api-version": "2019-03-01", + "$expand": "virtualMachines\\$ref" }, "responses": { "200": { "body": { "value": [ { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", "properties": { "platformUpdateDomainCount": 5, - "platformFaultDomainCount": 2 + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "centralus", - "tags": { - "{tagName}": "{tagValue}" + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", "sku": { - "name": "Aligned" + "name": "Classic" } }, { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, "properties": { - "platformUpdateDomainCount": 3, - "platformFaultDomainCount": 2 + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "type": "Microsoft.Compute/availabilitySets", - "location": "westus", + "location": "westcentralus", "tags": { "{tagName}": "{tagValue}" }, - "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", - "name": "{availabilitySetName}", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, "sku": { "name": "Classic" } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandGet.json index 2ee8c2c1f551..79c85f111f2f 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandGet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandGet.json @@ -19,12 +19,12 @@ { "name": "arg1", "type": "string", - "value": "value1" + "defaultValue": "value1" }, { "name": "arg2", "type": "string", - "value": "value2" + "defaultValue": "value2" } ], "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandList.json index ca6d8a7a5247..07c17bc67543 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandList.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/VirtualMachineRunCommandList.json @@ -9,70 +9,70 @@ "body": { "value": [ { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableRemotePS", "osType": "Windows", "label": "Enable remote PowerShell", "description": "Configure the machine to enable remote PowerShell." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "IPConfig", "osType": "Windows", "label": "List IP configuration", "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunPowerShellScript", "osType": "Windows", "label": "Executes a PowerShell script", "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RunShellScript", "osType": "Linux", "label": "Executes a Linux shell script", "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ifconfig", "osType": "Linux", "label": "List network configuration", "description": "Get the configuration of all network interfaces." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "EnableAdminAccount", "osType": "Windows", "label": "Enable administrator account", "description": "Checks if the local Administrator account is disabled, and if so enables it." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetAccountPassword", "osType": "Windows", "label": "Reset built-in Administrator account password", "description": "Reset built-in Administrator account password." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "RDPSettings", "osType": "Windows", "label": "Verify RDP Listener Settings", "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "SetRDPPort", "osType": "Windows", "label": "Set Remote Desktop port", "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." }, { - "schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", "id": "ResetRDPCert", "osType": "Windows", "label": "Restore RDP Authentication mode to defaults", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json new file mode 100644 index 000000000000..1b040438586a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-04-01", + "$filter": "location eq 'westus'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "virtualMachines", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "MaxResourceVolumeMB", + "value": "20480" + }, + { + "name": "OSVhdSizeMB", + "value": "1047552" + }, + { + "name": "vCPUs", + "value": "1" + }, + { + "name": "HyperVGenerations", + "value": "V1" + }, + { + "name": "MemoryGB", + "value": "0.75" + }, + { + "name": "MaxDataDiskCount", + "value": "1" + }, + { + "name": "LowPriorityCapable", + "value": "False" + }, + { + "name": "PremiumIO", + "value": "False" + }, + { + "name": "vCPUsAvailable", + "value": "1" + }, + { + "name": "ACUs", + "value": "50" + }, + { + "name": "vCPUsPerCore", + "value": "1" + }, + { + "name": "EphemeralOSDiskSupported", + "value": "False" + }, + { + "name": "AcceleratedNetworkingEnabled", + "value": "False" + }, + { + "name": "RdmaEnabled", + "value": "False" + }, + { + "name": "MaxNetworkInterfaces", + "value": "2" + } + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "UltraSSDAvailable", + "value": "True" + } + ] + } + ] + } + ], + "name": "Standard_A0", + "tier": "Standard", + "size": "A0", + "family": "standardA0_A7Family" + }, + { + "resourceType": "virtualMachines", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "MaxResourceVolumeMB", + "value": "71680" + }, + { + "name": "OSVhdSizeMB", + "value": "1047552" + }, + { + "name": "vCPUs", + "value": "1" + }, + { + "name": "HyperVGenerations", + "value": "V1" + }, + { + "name": "MemoryGB", + "value": "1.75" + }, + { + "name": "MaxDataDiskCount", + "value": "2" + }, + { + "name": "LowPriorityCapable", + "value": "True" + }, + { + "name": "PremiumIO", + "value": "False" + }, + { + "name": "vCPUsAvailable", + "value": "1" + }, + { + "name": "ACUs", + "value": "100" + }, + { + "name": "vCPUsPerCore", + "value": "1" + }, + { + "name": "EphemeralOSDiskSupported", + "value": "False" + }, + { + "name": "AcceleratedNetworkingEnabled", + "value": "False" + }, + { + "name": "RdmaEnabled", + "value": "False" + }, + { + "name": "MaxNetworkInterfaces", + "value": "2" + } + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "name": "Standard_A1", + "tier": "Standard", + "size": "A1", + "family": "standardA0_A7Family" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json index 7012927a8fd3..e579007e9eaa 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json @@ -48,6 +48,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." } ], "responses": { @@ -64,6 +71,9 @@ "x-ms-examples": { "Lists all available Resource SKUs": { "$ref": "./examples/ListAvailableResourceSkus.json" + }, + "Lists all available Resource SKUs for the specified region": { + "$ref": "./examples/ListAvailableResourceSkusForARegion.json" } } } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json new file mode 100644 index 000000000000..94b1e654dd27 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json @@ -0,0 +1,10301 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2019-07-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Compute/operations": { + "get": { + "tags": [ + "ComputeOperations" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ComputeOperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}": { + "put": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_CreateOrUpdate", + "description": "Create or update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "Parameters supplied to the Create Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + }, + "x-ms-examples": { + "Create an availability set.": { + "$ref": "./examples/CreateAnAvailabilitySet.json" + } + } + }, + "patch": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Update", + "description": "Update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySetUpdate" + }, + "description": "Parameters supplied to the Update Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + }, + "delete": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Delete", + "description": "Delete an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Get", + "description": "Retrieves information about an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListBySubscription", + "description": "Lists all availability sets in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_List", + "description": "Lists all availability sets in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListAvailableSizes", + "description": "Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}": { + "put": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_CreateOrUpdate", + "description": "Create or update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "Parameters supplied to the Create Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create or Update a proximity placement group.": { + "$ref": "./examples/CreateOrUpdateAProximityPlacementGroup.json" + } + } + }, + "patch": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Update", + "description": "Update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupUpdate" + }, + "description": "Parameters supplied to the Update Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/PatchAProximityPlacementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Delete", + "description": "Delete a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/DeleteAProximityPlacementGroup.json" + } + } + }, + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Get", + "description": "Retrieves information about a proximity placement group .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/GetAProximityPlacementGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListBySubscription", + "description": "Lists all proximity placement groups in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListByResourceGroup", + "description": "Lists all proximity placement groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInAResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}": { + "put": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_CreateOrUpdate", + "description": "Create or update a dedicated host group. For details of Dedicated Host and Dedicated Host Groups please see [Dedicated Host Documentation] (https://go.microsoft.com/fwlink/?linkid=2082596)", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "Parameters supplied to the Create Dedicated Host Group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host group.": { + "$ref": "./examples/CreateOrUpdateADedicatedHostGroup.json" + } + } + }, + "patch": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Update", + "description": "Update an dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroupUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + } + }, + "delete": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Delete", + "description": "Delete a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Get", + "description": "Retrieves information about a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create a dedicated host group.": { + "$ref": "./examples/GetADedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListByResourceGroup", + "description": "Lists all of the dedicated host groups in the specified resource group. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListBySubscription", + "description": "Lists all of the dedicated host groups in the subscription. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}": { + "put": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_CreateOrUpdate", + "description": "Create or update a dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "Parameters supplied to the Create Dedicated Host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host .": { + "$ref": "./examples/CreateOrUpdateADedicatedHost.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Update", + "description": "Update an dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Delete", + "description": "Delete a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Get", + "description": "Retrieves information about a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Get a dedicated host.": { + "$ref": "./examples/GetADedicatedHost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts": { + "get": { + "tags": [ + "DedicatedHost" + ], + "operationId": "DedicatedHosts_ListByHostGroup", + "description": "Lists all of the dedicated hosts in the specified dedicated host group. Use the nextLink property in the response to get the next page of dedicated hosts.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_Get", + "description": "Gets a virtual machine extension image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListTypes", + "description": "Gets a list of virtual machine extension image types.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListVersions", + "description": "Gets a list of virtual machine extension image versions.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + }, + "x-ms-odata": "#/definitions/VirtualMachineExtensionImage" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be created or updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Update", + "description": "The operation to update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be deleted." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions": { + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_List", + "description": "The operation to get all extensions of a Virtual Machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_Get", + "description": "Gets a virtual machine image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU version." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_List", + "description": "Gets a list of all virtual machine image versions for the specified location, publisher, offer, and SKU.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + }, + "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListOffers", + "description": "Gets a list of virtual machine image offers for the specified location and publisher.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListPublishers", + "description": "Gets a list of virtual machine image publishers for the specified Azure location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListSkus", + "description": "Gets a list of virtual machine image SKUs for the specified location, publisher, and offer.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usage_List", + "description": "Gets, for the specified location, the current compute resource usage information as well as the limits for compute resources under the subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListByLocation", + "description": "Gets all the virtual machines under the specified subscription for the specified location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which virtual machines under the subscription are queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-examples": { + "Lists all the virtual machines under the specified subscription for the specified location.": { + "$ref": "./examples/ListVirtualMachinesInASubscriptionByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "This API is deprecated. Use [Resources Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list)", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}": { + "put": { + "tags": [ + "Images" + ], + "operationId": "Images_CreateOrUpdate", + "description": "Create or update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Image" + }, + "description": "Parameters supplied to the Create Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Create a virtual machine image from a blob.": { + "$ref": "./examples/CreateAnImageFromABlob.json" + }, + "Create a virtual machine image from a snapshot.": { + "$ref": "./examples/CreateAnImageFromASnapshot.json" + }, + "Create a virtual machine image from a managed disk.": { + "$ref": "./examples/CreateAnImageFromAManagedDisk.json" + }, + "Create a virtual machine image from an existing virtual machine.": { + "$ref": "./examples/CreateAnImageFromAVM.json" + }, + "Create a virtual machine image that includes a data disk from a blob.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromABlob.json" + }, + "Create a virtual machine image that includes a data disk from a snapshot.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json" + }, + "Create a virtual machine image that includes a data disk from a managed disk.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json" + }, + "Create a virtual machine image from a blob with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromABlobWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a snapshot with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a managed disk with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Images" + ], + "operationId": "Images_Update", + "description": "Update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUpdate" + }, + "description": "Parameters supplied to the Update Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Images" + ], + "operationId": "Images_Delete", + "description": "Deletes an Image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_Get", + "description": "Gets an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Get information about a virtual machine image.": { + "$ref": "./examples/GetInformationAboutAnImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_ListByResourceGroup", + "description": "Gets the list of images under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a resource group.": { + "$ref": "./examples/ListImagesInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_List", + "description": "Gets the list of Images in the subscription. Use nextLink property in the response to get the next page of Images. Do this till nextLink is null to fetch all the Images.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a subscription.": { + "$ref": "./examples/ListImagesInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Capture", + "description": "Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureParameters" + }, + "description": "Parameters supplied to the Capture Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}": { + "put": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_CreateOrUpdate", + "description": "The operation to create or update a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "Parameters supplied to the Create Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a vm with password authentication.": { + "$ref": "./examples/CreateAVmWithPasswordAuthentication.json" + }, + "Create a vm with ssh authentication.": { + "$ref": "./examples/CreateAVmWithSshAuthentication.json" + }, + "Create a vm with premium storage.": { + "$ref": "./examples/CreateAVmWithPremiumStorage.json" + }, + "Create a vm in an availability set.": { + "$ref": "./examples/CreateAVmInAnAvailabilitySet.json" + }, + "Create a vm with boot diagnostics.": { + "$ref": "./examples/CreateAVmWithBootDiagnostics.json" + }, + "Create a vm with empty data disks.": { + "$ref": "./examples/CreateAVmWithEmptyDataDisks.json" + }, + "Create a vm with a marketplace image plan.": { + "$ref": "./examples/CreateAVmWithAMarketplaceImagePlan.json" + }, + "Create a vm from a custom image.": { + "$ref": "./examples/CreateAVmFromACustomImage.json" + }, + "Create a platform-image vm with unmanaged os and data disks.": { + "$ref": "./examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json" + }, + "Create a custom-image vm from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a vm with ephemeral os disk.": { + "$ref": "./examples/CreateAVmWithADiffOsDisk.json" + }, + "Create a vm with DiskEncryptionSet resource id in the os disk and data disk.": { + "$ref": "./examples/CreateAVmWithDiskEncryptionSetResource.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Update", + "description": "The operation to update a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a VM by detaching data disk": { + "$ref": "./examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Delete", + "description": "The operation to delete a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Get", + "description": "Retrieves information about the model view or the instance view of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-examples": { + "Get a Virtual Machine.": { + "$ref": "./examples/GetVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_InstanceView", + "description": "Retrieves information about the run-time state of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstanceView" + } + } + }, + "x-ms-examples": { + "Get Virtual Machine Instance View.": { + "$ref": "./examples/GetVirtualMachineInstanceView.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ConvertToManagedDisks", + "description": "Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Deallocate", + "description": "Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Generalize", + "description": "Sets the state of the virtual machine to generalized.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_List", + "description": "Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAll", + "description": "Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "statusOnly", + "in": "query", + "required": false, + "type": "string", + "description": "statusOnly=true enables fetching run time status of all Virtual Machines in the subscription." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAvailableSizes", + "description": "Lists all available virtual machine sizes to which the specified virtual machine can be resized.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Lists all available virtual machine sizes to which the specified virtual machine can be resized": { + "$ref": "./examples/ListAvailableVmSizes_VirtualMachines.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PowerOff", + "description": "The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reapply": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reapply", + "description": "The operation to reapply a virtual machine's state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reapply the state of a virtual machine.": { + "$ref": "./examples/ReapplyVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Restart", + "description": "The operation to restart a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Start", + "description": "The operation to start a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Redeploy", + "description": "Shuts down the virtual machine, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reimage": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reimage", + "description": "Reimages the virtual machine which has an ephemeral OS disk back to its initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineReimageParameters" + }, + "description": "Parameters supplied to the Reimage Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reimage a Virtual Machine.": { + "$ref": "./examples/ReimageVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PerformMaintenance", + "description": "The operation to perform maintenance on a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}": { + "put": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_CreateOrUpdate", + "description": "Create or update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a scale set with password authentication.": { + "$ref": "./examples/CreateAScaleSetWithPasswordAuthentication.json" + }, + "Create a scale set with ssh authentication.": { + "$ref": "./examples/CreateAScaleSetWithSshAuthentication.json" + }, + "Create a scale set with premium storage.": { + "$ref": "./examples/CreateAScaleSetWithPremiumStorage.json" + }, + "Create a scale set with empty data disks on each vm.": { + "$ref": "./examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json" + }, + "Create a scale set with an azure load balancer.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureLoadBalancer.json" + }, + "Create a scale set with an azure application gateway.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureApplicationGateway.json" + }, + "Create a scale set with boot diagnostics.": { + "$ref": "./examples/CreateAScaleSetWithBootDiagnostics.json" + }, + "Create a scale set with a marketplace image plan.": { + "$ref": "./examples/CreateAScaleSetWithAMarketplaceImagePlan.json" + }, + "Create a scale set from a custom image.": { + "$ref": "./examples/CreateAScaleSetFromACustomImage.json" + }, + "Create a platform-image scale set with unmanaged os disks.": { + "$ref": "./examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json" + }, + "Create a custom-image scale set from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a scale set with virtual machines in different zones.": { + "$ref": "./examples/CreateAScaleSetWithVMsInDifferentZones.json" + }, + "Create a scale set with ephemeral os disks.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDisk.json" + }, + "Create a scale set with terminate scheduled events enabled.": { + "$ref": "./examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json" + }, + "Create a scale set with automatic repairs enabled": { + "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" + }, + "Create a scale set with DiskEncryptionSet resource in os disk and data disk.": { + "$ref": "./examples/CreateAScalesetWithDiskEncryptionSetResource.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Update", + "description": "Update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdate" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Delete", + "description": "Deletes a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Get", + "description": "Display information about a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Deallocate", + "description": "Deallocates specific virtual machines in a VM scale set. Shuts down the virtual machines and releases the compute resources. You are not billed for the compute resources that this virtual machine scale set deallocates.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/delete": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_DeleteInstances", + "description": "Deletes virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetInstanceView", + "description": "Gets the status of a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_List", + "description": "Gets a list of all VM scale sets under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_CreateOrUpdate", + "description": "The operation to create or update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "Parameters supplied to the Create VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be deleted." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_List", + "description": "Gets a list of all extensions in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListAll", + "description": "Gets a list of all VM Scale Sets in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of VM Scale Sets. Do this till nextLink is null to fetch all the VM Scale Sets.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListWithLinkResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListSkus", + "description": "Gets a list of SKUs available for your VM scale set, including the minimum and maximum VM instances allowed for each SKU.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListSkusResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetOSUpgradeHistory", + "description": "Gets list of OS upgrades on a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListOSUpgradeHistory" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PowerOff", + "description": "Power off (stop) one or more virtual machines in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Restart", + "description": "Restarts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Start", + "description": "Starts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Redeploy", + "description": "Shuts down all the virtual machines in the virtual machine scale set, moves them to a new node, and powers them back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PerformMaintenance", + "description": "Perform maintenance on one or more virtual machines in a VM scale set. Operation on instances which are not eligible for perform maintenance will be failed. Please refer to best practices for more details: https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_UpdateInstances", + "description": "Upgrades one or more virtual machines to the latest SKU set in the VM scale set model.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Reimage", + "description": "Reimages (upgrade the operating system) one or more virtual machines in a VM scale set which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmScaleSetReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetReimageParameters" + }, + "description": "Parameters for Reimaging VM ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ReimageAll", + "description": "Reimages all the disks ( including data disks ) in the virtual machines in a VM scale set. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/cancel": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_Cancel", + "description": "Cancels the current virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartOSUpgrade", + "description": "Starts a rolling upgrade to move all virtual machine scale set instances to the latest available Platform Image OS version. Instances which are already running the latest available OS version are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartExtensionUpgrade", + "description": "Starts a rolling upgrade to move all extensions for all virtual machine scale set instances to the latest available extension version. Instances which are already running the latest extension versions are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start an extension rolling upgrade.": { + "$ref": "./examples/VMScaleSetExtensionRollingUpgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest": { + "get": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_GetLatest", + "description": "Gets the status of the latest virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RollingUpgradeStatusInfo" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/forceRecoveryServiceFabricPlatformUpdateDomainWalk": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ForceRecoveryServiceFabricPlatformUpdateDomainWalk", + "description": "Manual platform update domain walk to update virtual machines in a service fabric virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "platformUpdateDomain", + "in": "query", + "required": true, + "type": "integer", + "description": "The platform update domain for which a manual recovery walk is requested" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryWalkResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/convertToSinglePlacementGroup": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ConvertToSinglePlacementGroup", + "description": "Converts SinglePlacementGroup property to false for a existing virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VMScaleSetConvertToSinglePlacementGroupInput" + }, + "description": "The input object for ConvertToSinglePlacementGroup API." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_CreateOrUpdate", + "description": "The operation to create or update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Update", + "description": "The operation to update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/UpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Delete", + "description": "The operation to delete the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/DeleteVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Get", + "description": "The operation to get the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/GetVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_List", + "description": "The operation to get all extensions of an instance in Virtual Machine Scaleset.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List extensions in Vmss instance.": { + "$ref": "./examples/ListVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Reimage", + "description": "Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmScaleSetVMReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + }, + "description": "Parameters for the Reimaging Virtual machine in ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_ReimageAll", + "description": "Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Deallocate", + "description": "Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Update", + "description": "Updates a virtual machine of a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "Parameters supplied to the Update Virtual Machine Scale Sets VM operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Delete", + "description": "Deletes a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Get", + "description": "Gets a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_GetInstanceView", + "description": "Gets the status of a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_List", + "description": "Gets a list of all virtual machines in a VM scale sets.", + "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 VM scale set." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply to the operation." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "The list parameters." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PowerOff", + "description": "Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Restart", + "description": "Restarts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Start", + "description": "Starts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Redeploy", + "description": "Shuts down the virtual machine in the virtual machine scale set, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PerformMaintenance", + "description": "Performs maintenance on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportRequestRateByInterval", + "x-ms-examples": { + "Export logs which contain all Api requests made to Compute Resource Provider within the given time period broken down by intervals.": { + "$ref": "./examples/LogAnalyticsRequestRateByInterval.json" + } + }, + "description": "Export logs that show Api requests made by this subscription in the given time window to show throttling activities.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RequestRateByIntervalInput" + }, + "description": "Parameters supplied to the LogAnalytics getRequestRateByInterval Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getThrottledRequests": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportThrottledRequests", + "x-ms-examples": { + "Export logs which contain all throttled Api requests made to Compute Resource Provider within the given time period.": { + "$ref": "./examples/LogAnalyticsThrottledRequests.json" + } + }, + "description": "Export logs that show total throttled Api requests for this subscription in the given time window.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThrottledRequestsInput" + }, + "description": "Parameters supplied to the LogAnalytics getThrottledRequests Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "ComputeOperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ComputeOperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "ComputeOperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ComputeOperationValueDisplay" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "ComputeOperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "HyperVGenerationType": { + "type": "string", + "description": "Specifies the HyperVGeneration Type", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationTypes", + "modelAsString": true + } + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "AvailabilitySetProperties": { + "properties": { + "platformUpdateDomainCount": { + "type": "integer", + "format": "int32", + "description": "Update Domain count." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all virtual machines in the availability set." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the availability set should be assigned to.

Minimum api-version: 2018-04-01." + }, + "statuses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a resource." + }, + "AvailabilitySetSkuType": { + "type": "string", + "description": "Specifies the sku of an Availability Set. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'.", + "enum": [ + "Classic", + "Aligned" + ], + "x-ms-enum": { + "name": "AvailabilitySetSkuTypes", + "modelAsString": true + } + }, + "AvailabilitySet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvailabilitySetProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set." + }, + "AvailabilitySetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvailabilitySetProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the availability set" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Only tags may be updated." + }, + "AvailabilitySetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "The list of availability sets" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of AvailabilitySets. Call ListNext() with this URI to fetch the next page of AvailabilitySets." + } + }, + "required": [ + "value" + ], + "description": "The List Availability Set operation response." + }, + "ProximityPlacementGroupProperties": { + "properties": { + "proximityPlacementGroupType": { + "type": "string", + "description": "Specifies the type of the proximity placement group.

Possible values are:

**Standard** : Co-locate resources within an Azure region or Availability Zone.

**Ultra** : For future use.", + "enum": [ + "Standard", + "Ultra" + ], + "x-ms-enum": { + "name": "ProximityPlacementGroupType", + "modelAsString": true + } + }, + "virtualMachines": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all virtual machines in the proximity placement group." + }, + "virtualMachineScaleSets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all virtual machine scale sets in the proximity placement group." + }, + "availabilitySets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all availability sets in the proximity placement group." + } + }, + "description": "Describes the properties of a Proximity Placement Group." + }, + "ProximityPlacementGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProximityPlacementGroupProperties", + "description": "Describes the properties of a Proximity Placement Group." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupUpdate": { + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "The list of proximity placement groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of proximity placement groups." + } + }, + "required": [ + "value" + ], + "description": "The List Proximity Placement Group operation response." + }, + "DedicatedHostGroupProperties": { + "properties": { + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 3, + "description": "Number of fault domains that the host group can span." + }, + "hosts": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all dedicated hosts in the dedicated host group." + } + }, + "required": [ + "platformFaultDomainCount" + ], + "description": "Dedicated Host Group Properties." + }, + "DedicatedHostGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated hosts should be assigned to.

Currently, a dedicated host can only be added to a dedicated host group at creation time. An existing dedicated host cannot be added to another dedicated host group." + }, + "DedicatedHostGroupUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated host should be assigned to. Only tags may be updated." + }, + "DedicatedHostGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "The list of dedicated host groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Dedicated Host Groups. Call ListNext() with this URI to fetch the next page of Dedicated Host Groups." + } + }, + "required": [ + "value" + ], + "description": "The List Dedicated Host Group with resource group response." + }, + "DedicatedHostLicenseType": { + "type": "string", + "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host.

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**", + "enum": [ + "None", + "Windows_Server_Hybrid", + "Windows_Server_Perpetual" + ], + "x-ms-enum": { + "name": "DedicatedHostLicenseTypes", + "modelAsString": false + } + }, + "DedicatedHostAllocatableVM": { + "properties": { + "vmSize": { + "type": "string", + "description": "VM size in terms of which the unutilized capacity is represented." + }, + "count": { + "type": "number", + "format": "double", + "description": "Maximum number of VMs of size vmSize that can fit in the dedicated host's remaining capacity." + } + }, + "description": "Represents the dedicated host unutilized capacity in terms of a specific VM size." + }, + "DedicatedHostAvailableCapacity": { + "properties": { + "allocatableVMs": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostAllocatableVM" + }, + "description": "The unutilized capacity of the dedicated host represented in terms of each VM size that is allowed to be deployed to the dedicated host." + } + }, + "description": "Dedicated host unutilized capacity." + }, + "DedicatedHostInstanceView": { + "properties": { + "assetId": { + "readOnly": true, + "type": "string", + "description": "Specifies the unique id of the dedicated physical machine on which the dedicated host resides." + }, + "availableCapacity": { + "$ref": "#/definitions/DedicatedHostAvailableCapacity", + "description": "Unutilized capacity of the dedicated host." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a dedicated host." + }, + "DedicatedHostProperties": { + "properties": { + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 2, + "description": "Fault domain of the dedicated host within a dedicated host group." + }, + "autoReplaceOnFailure": { + "type": "boolean", + "description": "Specifies whether the dedicated host should be replaced automatically in case of a failure. The value is defaulted to 'true' when not provided." + }, + "hostId": { + "readOnly": true, + "type": "string", + "description": "A unique id generated and assigned to the dedicated host by the platform.

Does not change throughout the lifetime of the host." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all virtual machines in the Dedicated Host." + }, + "licenseType": { + "$ref": "#/definitions/DedicatedHostLicenseType", + "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host.

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**" + }, + "provisioningTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date when the host was first provisioned." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/DedicatedHostInstanceView", + "readOnly": true, + "description": "The dedicated host instance view." + } + }, + "description": "Properties of the dedicated host." + }, + "DedicatedHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the dedicated host for Hardware Generation and VM family. Only name is required to be set. List Microsoft.Compute SKUs for a list of possible values." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ], + "description": "Specifies information about the Dedicated host." + }, + "DedicatedHostUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host. Only tags, autoReplaceOnFailure and licenseType may be updated." + }, + "DedicatedHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "The list of dedicated hosts" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of dedicated hosts. Call ListNext() with this URI to fetch the next page of dedicated hosts." + } + }, + "required": [ + "value" + ], + "description": "The list dedicated host operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "description": "The name of the virtual machine size." + }, + "numberOfCores": { + "type": "integer", + "format": "int32", + "description": "The number of cores supported by the virtual machine size." + }, + "osDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The OS disk size, in MB, allowed by the virtual machine size." + }, + "resourceDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The resource disk size, in MB, allowed by the virtual machine size." + }, + "memoryInMB": { + "type": "integer", + "format": "int32", + "description": "The amount of memory, in MB, supported by the virtual machine size." + }, + "maxDataDiskCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of data disks that can be attached to the virtual machine size." + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes." + } + }, + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineExtensionImageProperties": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system this extension supports." + }, + "computeRole": { + "type": "string", + "description": "The type of role (IaaS or PaaS) this extension supports." + }, + "handlerSchema": { + "type": "string", + "description": "The schema defined by publisher, where extension consumers should provide settings in a matching schema." + }, + "vmScaleSetEnabled": { + "type": "boolean", + "description": "Whether the extension can be used on xRP VMScaleSets. By default existing extensions are usable on scalesets, but there might be cases where a publisher wants to explicitly indicate the extension is only enabled for CRP VMs but not VMSS." + }, + "supportsMultipleExtensions": { + "type": "boolean", + "description": "Whether the handler can support multiple extensions." + } + }, + "required": [ + "operatingSystem", + "computeRole", + "handlerSchema" + ], + "description": "Describes the properties of a Virtual Machine Extension Image." + }, + "VirtualMachineExtensionImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension Image." + }, + "VirtualMachineImageResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource." + }, + "location": { + "type": "string", + "description": "The supported Azure location of the resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Specifies the tags that are assigned to the virtual machine. For more information about using tags, see [Using tags to organize your Azure resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md)." + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Virtual machine image resource information." + }, + "VirtualMachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The virtual machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "substatuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine extension." + }, + "VirtualMachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView", + "description": "The virtual machine extension instance view." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtension": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The list of extensions" + } + }, + "description": "The List Extension operation response" + }, + "PurchasePlan": { + "properties": { + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "OSDiskImage": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system of the osDiskImage.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "required": [ + "operatingSystem" + ], + "description": "Contains the os disk image information." + }, + "DataDiskImage": { + "properties": { + "lun": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "description": "Contains the data disk images information." + }, + "AutomaticOSUpgradeProperties": { + "properties": { + "automaticOSUpgradeSupported": { + "type": "boolean", + "description": "Specifies whether automatic OS upgrade is supported on the image." + } + }, + "required": [ + "automaticOSUpgradeSupported" + ], + "description": "Describes automatic OS upgrade properties on the image." + }, + "VirtualMachineImageProperties": { + "properties": { + "plan": { + "$ref": "#/definitions/PurchasePlan" + }, + "osDiskImage": { + "$ref": "#/definitions/OSDiskImage" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskImage" + } + }, + "automaticOSUpgradeProperties": { + "$ref": "#/definitions/AutomaticOSUpgradeProperties" + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType" + } + }, + "description": "Describes the properties of a Virtual Machine Image." + }, + "VirtualMachineImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineImageResource" + } + ], + "description": "Describes a Virtual Machine Image." + }, + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "properties": { + "unit": { + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "type": "integer", + "format": "int32", + "description": "The current usage of the resource." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes Compute Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of compute resource usages." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of compute resource usage information. Call ListNext() with this to fetch the next page of compute resource usage information." + } + }, + "required": [ + "value" + ], + "description": "The List Usages operation response." + }, + "VirtualMachineReimageParameters": { + "properties": { + "tempDisk": { + "type": "boolean", + "description": "Specifies whether to reimage temp disk. Default value: false. Note: This temp disk reimage parameter is only supported for VM/VMSS with Ephemeral OS disk." + } + }, + "description": "Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged" + }, + "VirtualMachineCaptureParameters": { + "properties": { + "vhdPrefix": { + "type": "string", + "description": "The captured virtual hard disk's name prefix." + }, + "destinationContainerName": { + "type": "string", + "description": "The destination container name." + }, + "overwriteVhds": { + "type": "boolean", + "description": "Specifies whether to overwrite the destination virtual hard disk, in case of conflict." + } + }, + "required": [ + "vhdPrefix", + "destinationContainerName", + "overwriteVhds" + ], + "description": "Capture Virtual Machine parameters." + }, + "VirtualMachineCaptureResult": { + "properties": { + "$schema": { + "readOnly": true, + "type": "string", + "description": "the schema of the captured virtual machine" + }, + "contentVersion": { + "readOnly": true, + "type": "string", + "description": "the version of the content" + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "parameters of the captured virtual machine" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "type": "object", + "description": "resource item" + }, + "description": "a list of resource items of the captured virtual machine" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Output of virtual machine capture operation." + }, + "Plan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + } + }, + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "HardwareProfile": { + "properties": { + "vmSize": { + "type": "string", + "description": "Specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

The available VM sizes depend on region and availability set. For a list of available sizes use these APIs:

[List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)

[List all available virtual machine sizes in a region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)

[List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes)", + "enum": [ + "Basic_A0", + "Basic_A1", + "Basic_A2", + "Basic_A3", + "Basic_A4", + "Standard_A0", + "Standard_A1", + "Standard_A2", + "Standard_A3", + "Standard_A4", + "Standard_A5", + "Standard_A6", + "Standard_A7", + "Standard_A8", + "Standard_A9", + "Standard_A10", + "Standard_A11", + "Standard_A1_v2", + "Standard_A2_v2", + "Standard_A4_v2", + "Standard_A8_v2", + "Standard_A2m_v2", + "Standard_A4m_v2", + "Standard_A8m_v2", + "Standard_B1s", + "Standard_B1ms", + "Standard_B2s", + "Standard_B2ms", + "Standard_B4ms", + "Standard_B8ms", + "Standard_D1", + "Standard_D2", + "Standard_D3", + "Standard_D4", + "Standard_D11", + "Standard_D12", + "Standard_D13", + "Standard_D14", + "Standard_D1_v2", + "Standard_D2_v2", + "Standard_D3_v2", + "Standard_D4_v2", + "Standard_D5_v2", + "Standard_D2_v3", + "Standard_D4_v3", + "Standard_D8_v3", + "Standard_D16_v3", + "Standard_D32_v3", + "Standard_D64_v3", + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_D64s_v3", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_D15_v2", + "Standard_DS1", + "Standard_DS2", + "Standard_DS3", + "Standard_DS4", + "Standard_DS11", + "Standard_DS12", + "Standard_DS13", + "Standard_DS14", + "Standard_DS1_v2", + "Standard_DS2_v2", + "Standard_DS3_v2", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_DS11_v2", + "Standard_DS12_v2", + "Standard_DS13_v2", + "Standard_DS14_v2", + "Standard_DS15_v2", + "Standard_DS13-4_v2", + "Standard_DS13-2_v2", + "Standard_DS14-8_v2", + "Standard_DS14-4_v2", + "Standard_E2_v3", + "Standard_E4_v3", + "Standard_E8_v3", + "Standard_E16_v3", + "Standard_E32_v3", + "Standard_E64_v3", + "Standard_E2s_v3", + "Standard_E4s_v3", + "Standard_E8s_v3", + "Standard_E16s_v3", + "Standard_E32s_v3", + "Standard_E64s_v3", + "Standard_E32-16_v3", + "Standard_E32-8s_v3", + "Standard_E64-32s_v3", + "Standard_E64-16s_v3", + "Standard_F1", + "Standard_F2", + "Standard_F4", + "Standard_F8", + "Standard_F16", + "Standard_F1s", + "Standard_F2s", + "Standard_F4s", + "Standard_F8s", + "Standard_F16s", + "Standard_F2s_v2", + "Standard_F4s_v2", + "Standard_F8s_v2", + "Standard_F16s_v2", + "Standard_F32s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", + "Standard_G1", + "Standard_G2", + "Standard_G3", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_GS4-8", + "Standard_GS4-4", + "Standard_GS5-16", + "Standard_GS5-8", + "Standard_H8", + "Standard_H16", + "Standard_H8m", + "Standard_H16m", + "Standard_H16r", + "Standard_H16mr", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s", + "Standard_M64s", + "Standard_M64ms", + "Standard_M128s", + "Standard_M128ms", + "Standard_M64-32ms", + "Standard_M64-16ms", + "Standard_M128-64ms", + "Standard_M128-32ms", + "Standard_NC6", + "Standard_NC12", + "Standard_NC24", + "Standard_NC24r", + "Standard_NC6s_v2", + "Standard_NC12s_v2", + "Standard_NC24s_v2", + "Standard_NC24rs_v2", + "Standard_NC6s_v3", + "Standard_NC12s_v3", + "Standard_NC24s_v3", + "Standard_NC24rs_v3", + "Standard_ND6s", + "Standard_ND12s", + "Standard_ND24s", + "Standard_ND24rs", + "Standard_NV6", + "Standard_NV12", + "Standard_NV24" + ], + "x-ms-enum": { + "name": "VirtualMachineSizeTypes", + "modelAsString": true + } + } + }, + "description": "Specifies the hardware settings for the virtual machine." + }, + "ImageReference": { + "properties": { + "publisher": { + "type": "string", + "description": "The image publisher." + }, + "offer": { + "type": "string", + "description": "Specifies the offer of the platform image or marketplace image used to create the virtual machine." + }, + "sku": { + "type": "string", + "description": "The image SKU." + }, + "version": { + "type": "string", + "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "KeyVaultSecretReference": { + "properties": { + "secretUrl": { + "type": "string", + "description": "The URL referencing a secret in a Key Vault." + }, + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing the secret." + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Describes a reference to Key Vault Secret" + }, + "DiskEncryptionSetParameters": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes the parameter of customer managed disk encryption set resource id that can be specified for disk.

NOTE: The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details." + }, + "KeyVaultKeyReference": { + "properties": { + "keyUrl": { + "type": "string", + "description": "The URL referencing a key encryption key in Key Vault." + }, + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing the key." + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Describes a reference to Key Vault Key" + }, + "DiskEncryptionSettings": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultSecretReference", + "description": "Specifies the location of the disk encryption key, which is a Key Vault Secret." + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultKeyReference", + "description": "Specifies the location of the key encryption key in Key Vault." + }, + "enabled": { + "type": "boolean", + "description": "Specifies whether disk encryption should be enabled on the virtual machine." + } + }, + "description": "Describes a Encryption Settings for a Disk" + }, + "VirtualHardDisk": { + "properties": { + "uri": { + "type": "string", + "description": "Specifies the virtual hard disk's uri." + } + }, + "description": "Describes the uri of a disk." + }, + "Caching": { + "type": "string", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingTypes", + "modelAsString": false + } + }, + "CreateOption": { + "type": "string", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.", + "enum": [ + "FromImage", + "Empty", + "Attach" + ], + "x-ms-enum": { + "name": "DiskCreateOptionTypes", + "modelAsString": true + } + }, + "StorageAccountType": { + "type": "string", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountTypes", + "modelAsString": true + } + }, + "DiffDiskOption": { + "type": "string", + "description": "Specifies the ephemeral disk option for operating system disk.", + "enum": [ + "Local" + ], + "x-ms-enum": { + "name": "DiffDiskOptions", + "modelAsString": true + } + }, + "DiffDiskSettings": { + "properties": { + "option": { + "$ref": "#/definitions/DiffDiskOption", + "description": "Specifies the ephemeral disk settings for operating system disk." + } + }, + "description": "Describes the parameters of ephemeral disk settings that can be specified for operating system disk.

NOTE: The ephemeral disk settings can only be specified for managed disk." + }, + "ManagedDiskParameters": { + "properties": { + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed disk." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "The parameters of a managed disk." + }, + "OSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

Possible values are:

**Windows**

**Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "encryptionSettings": { + "$ref": "#/definitions/DiskEncryptionSettings", + "description": "Specifies the encryption settings for the OS Disk.

Minimum api-version: 2015-06-15" + }, + "name": { + "type": "string", + "description": "The disk name." + }, + "vhd": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The virtual hard disk." + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "diffDiskSettings": { + "$ref": "#/definitions/DiffDiskSettings", + "description": "Specifies the ephemeral Disk Settings for the operating system disk used by the virtual machine." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + } + }, + "required": [ + "createOption" + ], + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "DataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + }, + "name": { + "type": "string", + "description": "The disk name." + }, + "vhd": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The virtual hard disk." + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + }, + "toBeDetached": { + "type": "boolean", + "description": "Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset" + }, + "diskIOPSReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + }, + "diskMBpsReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a data disk." + }, + "StorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/OSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + } + }, + "description": "Specifies the storage settings for the virtual machine disks." + }, + "AdditionalCapabilities": { + "properties": { + "ultraSSDEnabled": { + "type": "boolean", + "description": "The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled." + } + }, + "description": "Enables or disables a capability on the virtual machine or virtual machine scale set." + }, + "AdditionalUnattendContent": { + "properties": { + "passName": { + "type": "string", + "description": "The pass name. Currently, the only allowable value is OobeSystem.", + "enum": [ + "OobeSystem" + ], + "x-ms-enum": { + "name": "PassNames", + "modelAsString": false + } + }, + "componentName": { + "type": "string", + "description": "The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.", + "enum": [ + "Microsoft-Windows-Shell-Setup" + ], + "x-ms-enum": { + "name": "ComponentNames", + "modelAsString": false + } + }, + "settingName": { + "type": "string", + "description": "Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.", + "enum": [ + "AutoLogon", + "FirstLogonCommands" + ], + "x-ms-enum": { + "name": "SettingNames", + "modelAsString": false + } + }, + "content": { + "type": "string", + "description": "Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted." + } + }, + "description": "Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied." + }, + "WinRMListener": { + "properties": { + "protocol": { + "type": "string", + "description": "Specifies the protocol of listener.

Possible values are:
**http**

**https**", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ProtocolTypes", + "modelAsString": false + } + }, + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + } + }, + "description": "Describes Protocol and thumbprint of Windows Remote Management listener" + }, + "WinRMConfiguration": { + "properties": { + "listeners": { + "type": "array", + "items": { + "$ref": "#/definitions/WinRMListener" + }, + "description": "The list of Windows Remote Management listeners" + } + }, + "description": "Describes Windows Remote Management configuration of the VM" + }, + "WindowsConfiguration": { + "properties": { + "provisionVMAgent": { + "type": "boolean", + "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + }, + "enableAutomaticUpdates": { + "type": "boolean", + "description": "Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true.

For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning." + }, + "timeZone": { + "type": "string", + "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\"" + }, + "additionalUnattendContent": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalUnattendContent" + }, + "description": "Specifies additional base-64 encoded XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup." + }, + "winRM": { + "$ref": "#/definitions/WinRMConfiguration", + "description": "Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell." + } + }, + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "SshPublicKey": { + "properties": { + "path": { + "type": "string", + "description": "Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys" + }, + "keyData": { + "type": "string", + "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format.

For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-mac-create-ssh-keys?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + } + }, + "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed." + }, + "SshConfiguration": { + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKey" + }, + "description": "The list of SSH public keys used to authenticate with linux based VMs." + } + }, + "description": "SSH configuration for Linux based VMs running on Azure" + }, + "LinuxConfiguration": { + "properties": { + "disablePasswordAuthentication": { + "type": "boolean", + "description": "Specifies whether password authentication should be disabled." + }, + "ssh": { + "$ref": "#/definitions/SshConfiguration", + "description": "Specifies the ssh key configuration for a Linux OS." + }, + "provisionVMAgent": { + "type": "boolean", + "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + } + }, + "description": "Specifies the Linux operating system settings on the virtual machine.

For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "VaultCertificate": { + "properties": { + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + }, + "certificateStore": { + "type": "string", + "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account.

For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted." + } + }, + "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM." + }, + "VaultSecretGroup": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing all of the certificates in VaultCertificates." + }, + "vaultCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultCertificate" + }, + "description": "The list of key vault references in SourceVault which contain certificates." + } + }, + "description": "Describes a set of certificates which are all in the same Key Vault." + }, + "OSProfile": { + "properties": { + "computerName": { + "type": "string", + "description": "Specifies the host OS name of the virtual machine.

This name cannot be updated after the VM is created.

**Max-length (Windows):** 15 characters

**Max-length (Linux):** 64 characters.

For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions)." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

**Windows-only restriction:** Cannot end in \".\"

**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

**Minimum-length (Linux):** 1 character

**Max-length (Linux):** 64 characters

**Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

    For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "Specifies the Linux operating system settings on the virtual machine.

    For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

    For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machine." + }, + "allowExtensionOperations": { + "type": "boolean", + "description": "Specifies whether extension operations should be allowed on the virtual machine.

    This may only be set to False when no extensions are present on the virtual machine." + }, + "requireGuestProvisionSignal": { + "type": "boolean", + "description": "Specifies whether the guest provision signal is required from the virtual machine." + } + }, + "description": "Specifies the operating system settings for the virtual machine." + }, + "AutomaticRepairsPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false." + }, + "gracePeriod": { + "type": "string", + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The default value is 5 minutes (PT5M)." + }, + "maxInstanceRepairsPercent": { + "type": "integer", + "description": "The percentage (capacity of scaleset) of virtual machines that will be simultaneously repaired. The default value is 20%." + } + }, + "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." + }, + "NetworkInterfaceReferenceProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + } + }, + "description": "Describes a network interface reference properties." + }, + "NetworkInterfaceReference": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceReferenceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a network interface reference." + }, + "NetworkProfile": { + "properties": { + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceReference" + }, + "description": "Specifies the list of resource Ids for the network interfaces associated with the virtual machine." + } + }, + "description": "Specifies the network interfaces of the virtual machine." + }, + "BootDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether boot diagnostics should be enabled on the Virtual Machine." + }, + "storageUri": { + "type": "string", + "description": "Uri of the storage account to use for placing the console output and screenshot." + } + }, + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "DiagnosticsProfile": { + "properties": { + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnostics", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + } + }, + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "BillingProfile": { + "properties": { + "maxPrice": { + "type": "number", + "format": "double", + "description": "Specifies the maximum price you are willing to pay for a low priority VM/VMSS. This price is in US Dollars.

    This price will be compared with the current low priority price for the VM size. Also, the prices are compared at the time of create/update of low priority VM/VMSS and the operation will only succeed if the maxPrice is greater than the current low priority price.

    The maxPrice will also be used for evicting a low priority VM/VMSS if the current low priority price goes beyond the maxPrice after creation of VM/VMSS.

    Possible values are:

    - Any decimal value greater than zero. Example: $0.01538

    -1 – indicates default price to be up-to on-demand.

    You can set the maxPrice to -1 to indicate that the low priority VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you.

    Minimum api-version: 2019-03-01." + } + }, + "description": "Specifies the billing related details of a low priority VM or VMSS.

    Minimum api-version: 2019-03-01." + }, + "VirtualMachineExtensionHandlerInstanceView": { + "properties": { + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "The extension handler status." + } + }, + "description": "The instance view of a virtual machine extension handler." + }, + "VirtualMachineAgentInstanceView": { + "properties": { + "vmAgentVersion": { + "type": "string", + "description": "The VM Agent full version." + }, + "extensionHandlers": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionHandlerInstanceView" + }, + "description": "The virtual machine extension handler instance view." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of the VM Agent running on the virtual machine." + }, + "DiskInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSettings" + }, + "description": "Specifies the encryption settings for the OS Disk.

    Minimum api-version: 2015-06-15" + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of the disk." + }, + "BootDiagnosticsInstanceView": { + "properties": { + "consoleScreenshotBlobUri": { + "readOnly": true, + "type": "string", + "description": "The console screenshot blob URI." + }, + "serialConsoleLogBlobUri": { + "readOnly": true, + "type": "string", + "description": "The Linux serial console log blob Uri." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The boot diagnostics status information for the VM.

    NOTE: It will be set only if there are errors encountered in enabling boot diagnostics." + } + }, + "description": "The instance view of a virtual machine boot diagnostics." + }, + "VirtualMachineIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of virtual machine identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the virtual machine. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the virtual machine. 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 the Virtual Machine. 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 virtual machine." + }, + "MaintenanceRedeployStatus": { + "properties": { + "isCustomerInitiatedMaintenanceAllowed": { + "type": "boolean", + "description": "True, if customer is allowed to perform Maintenance." + }, + "preMaintenanceWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "Start Time for the Pre Maintenance Window." + }, + "preMaintenanceWindowEndTime": { + "type": "string", + "format": "date-time", + "description": "End Time for the Pre Maintenance Window." + }, + "maintenanceWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "Start Time for the Maintenance Window." + }, + "maintenanceWindowEndTime": { + "type": "string", + "format": "date-time", + "description": "End Time for the Maintenance Window." + }, + "lastOperationResultCode": { + "type": "string", + "description": "The Last Maintenance Operation Result Code.", + "enum": [ + "None", + "RetryLater", + "MaintenanceAborted", + "MaintenanceCompleted" + ], + "x-ms-enum": { + "name": "MaintenanceOperationResultCodeTypes", + "modelAsString": false + } + }, + "lastOperationMessage": { + "type": "string", + "description": "Message returned for the last Maintenance Operation." + } + }, + "description": "Maintenance Operation Status." + }, + "VirtualMachineInstanceView": { + "properties": { + "platformUpdateDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the update domain of the virtual machine." + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the fault domain of the virtual machine." + }, + "computerName": { + "type": "string", + "description": "The computer name assigned to the virtual machine." + }, + "osName": { + "type": "string", + "description": "The Operating System running on the virtual machine." + }, + "osVersion": { + "type": "string", + "description": "The version of Operating System running on the virtual machine." + }, + "hyperVGeneration": { + "type": "string", + "description": "Specifies the HyperVGeneration Type associated with a resource", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationType", + "modelAsString": true + } + }, + "rdpThumbPrint": { + "type": "string", + "description": "The Remote desktop certificate thumbprint." + }, + "vmAgent": { + "$ref": "#/definitions/VirtualMachineAgentInstanceView", + "description": "The VM Agent running on the virtual machine." + }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, + "disks": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskInstanceView" + }, + "description": "The virtual machine disk information." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView" + }, + "description": "The extensions information." + }, + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnosticsInstanceView", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine." + }, + "VirtualMachineProperties": { + "properties": { + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the virtual machine." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

    For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set.

    This property cannot exist along with a non-null properties.virtualMachineScaleSet reference." + }, + "virtualMachineScaleSet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the virtual machine scale set that the virtual machine should be assigned to. Virtual machines specified in the same virtual machine scale set are allocated to different nodes to maximize availability. Currently, a VM can only be added to virtual machine scale set at creation time. An existing VM cannot be added to a virtual machine scale set.

    This property cannot exist along with a non-null properties.availabilitySet reference.

    Minimum api‐version: 2019‐03‐01" + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine should be assigned to.

    Minimum api-version: 2018-04-01." + }, + "priority": { + "type": "string", + "description": "Specifies the priority for the virtual machine.

    Minimum api-version: 2019-03-01", + "enum": [ + "Regular", + "Low" + ], + "x-ms-enum": { + "name": "VirtualMachinePriorityTypes", + "modelAsString": true + } + }, + "evictionPolicy": { + "type": "string", + "description": "Specifies the eviction policy for the low priority virtual machine. Only supported value is 'Deallocate'.

    Minimum api-version: 2019-03-01", + "enum": [ + "Deallocate", + "Delete" + ], + "x-ms-enum": { + "name": "VirtualMachineEvictionPolicyTypes", + "modelAsString": true + } + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a low priority virtual machine.

    Minimum api-version: 2019-03-01." + }, + "host": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the dedicated host that the virtual machine resides in.

    Minimum api-version: 2018-10-01." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands." + } + }, + "description": "Describes the properties of a Virtual Machine." + }, + "VirtualMachine": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineProperties" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The virtual machine child extension resources." + }, + "identity": { + "$ref": "#/definitions/VirtualMachineIdentity", + "description": "The identity of the virtual machine, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "VirtualMachineUpdate": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineIdentity", + "description": "The identity of the virtual machine, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Update." + }, + "VirtualMachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "The list of virtual machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of Virtual Machines." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The sku name." + }, + "tier": { + "type": "string", + "description": "Specifies the tier of virtual machines in a scale set.

    Possible Values:

    **Standard**

    **Basic**" + }, + "capacity": { + "type": "integer", + "format": "int64", + "description": "Specifies the number of virtual machines in the scale set." + } + }, + "description": "Describes a virtual machine scale set sku." + }, + "AutomaticOSUpgradePolicy": { + "properties": { + "enableAutomaticOSUpgrade": { + "type": "boolean", + "description": "Indicates whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the OS image becomes available. Default value is false.

    If this is set to true for Windows based scale sets, [enableAutomaticUpdates](https://docs.microsoft.com/dotnet/api/microsoft.azure.management.compute.models.windowsconfiguration.enableautomaticupdates?view=azure-dotnet) is automatically set to false and cannot be set to true." + }, + "disableAutomaticRollback": { + "type": "boolean", + "description": "Whether OS image rollback feature should be disabled. Default value is false." + } + }, + "description": "The configuration parameters used for performing automatic OS upgrade." + }, + "UpgradePolicy": { + "properties": { + "mode": { + "type": "string", + "description": "Specifies the mode of an upgrade to virtual machines in the scale set.

    Possible values are:

    **Manual** - You control the application of updates to virtual machines in the scale set. You do this by using the manualUpgrade action.

    **Automatic** - All virtual machines in the scale set are automatically updated at the same time.", + "enum": [ + "Automatic", + "Manual", + "Rolling" + ], + "x-ms-enum": { + "name": "UpgradeMode", + "modelAsString": false + } + }, + "rollingUpgradePolicy": { + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The configuration parameters used while performing a rolling upgrade." + }, + "automaticOSUpgradePolicy": { + "$ref": "#/definitions/AutomaticOSUpgradePolicy", + "description": "Configuration parameters used for performing automatic OS Upgrade." + } + }, + "description": "Describes an upgrade policy - automatic, manual, or rolling." + }, + "RollingUpgradePolicy": { + "properties": { + "maxBatchInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 5, + "maximum": 100, + "description": "The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. The default value for this parameter is 20%." + }, + "maxUnhealthyInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 5, + "maximum": 100, + "description": "The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. The default value for this parameter is 20%." + }, + "maxUnhealthyUpgradedInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. The default value for this parameter is 20%." + }, + "pauseTimeBetweenBatches": { + "type": "string", + "description": "The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. The default value is 0 seconds (PT0S)." + } + }, + "description": "The configuration parameters used while performing a rolling upgrade." + }, + "ScaleInPolicy": { + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Default", + "OldestVM", + "NewestVM" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetScaleInRules", + "modelAsString": true + } + }, + "description": "The rules to be followed when scaling-in a virtual machine scale set.

    Possible values are:

    **Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.

    **OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.

    **NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.

    " + } + }, + "description": "Describes a scale-in policy for a virtual machine scale set." + }, + "ImageOSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "osState": { + "type": "string", + "description": "The OS State.", + "enum": [ + "Generalized", + "Specialized" + ], + "x-ms-enum": { + "name": "OperatingSystemStateTypes", + "modelAsString": false + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageDisk" + } + ], + "required": [ + "osType", + "osState" + ], + "description": "Describes an Operating System disk." + }, + "ImageDataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageDisk" + } + ], + "required": [ + "lun" + ], + "description": "Describes a data disk." + }, + "ImageDisk": { + "properties": { + "snapshot": { + "$ref": "#/definitions/SubResource", + "description": "The snapshot." + }, + "managedDisk": { + "$ref": "#/definitions/SubResource", + "description": "The managedDisk." + }, + "blobUri": { + "type": "string", + "description": "The Virtual Hard Disk." + }, + "caching": { + "type": "string", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed image disk." + } + }, + "description": "Describes a image disk." + }, + "ImageStorageProfile": { + "properties": { + "osDisk": { + "$ref": "#/definitions/ImageOSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "zoneResilient": { + "type": "boolean", + "description": "Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS)." + } + }, + "description": "Describes a storage profile." + }, + "ImageProperties": { + "properties": { + "sourceVirtualMachine": { + "$ref": "#/definitions/SubResource", + "description": "The source virtual machine from which Image is created." + }, + "storageProfile": { + "$ref": "#/definitions/ImageStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state." + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType", + "description": "Gets the HyperVGenerationType of the VirtualMachine created from the image" + } + }, + "description": "Describes the properties of an Image." + }, + "Image": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "ImageUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "The source user image virtual hard disk. Only tags may be updated." + }, + "ImageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Image" + }, + "description": "The list of Images." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Images. Call ListNext() with this to fetch the next page of Images." + } + }, + "required": [ + "value" + ], + "description": "The List Image operation response." + }, + "VirtualMachineScaleSetIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of virtual machine scale set identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the virtual machine scale set. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the virtual machine scale set. 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 scale set.", + "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 the virtual machine scale set. 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 virtual machine scale set." + }, + "VirtualMachineScaleSetOSProfile": { + "properties": { + "computerNamePrefix": { + "type": "string", + "description": "Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

    **Windows-only restriction:** Cannot end in \".\"

    **Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

    **Minimum-length (Linux):** 1 character

    **Max-length (Linux):** 64 characters

    **Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

    For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "Specifies the Linux operating system settings on the virtual machine.

    For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

    For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machines in the scale set." + } + }, + "description": "Describes a virtual machine scale set OS profile." + }, + "VirtualMachineScaleSetUpdateOSProfile": { + "properties": { + "customData": { + "type": "string", + "description": "A base-64 encoded string of custom data." + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "The Windows Configuration of the OS profile." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "The Linux Configuration of the OS profile." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "The List of certificates for addition to the VM." + } + }, + "description": "Describes a virtual machine scale set OS profile." + }, + "VirtualMachineScaleSetManagedDiskParameters": { + "properties": { + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed disk." + } + }, + "description": "Describes the parameters of a ScaleSet managed disk." + }, + "VirtualMachineScaleSetOSDisk": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machines in the scale set should be created.

    The only allowed value is: **FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diffDiskSettings": { + "$ref": "#/definitions/DiffDiskSettings", + "description": "Specifies the ephemeral disk Settings for the operating system disk used by the virtual machine scale set." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of the operating system disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "Specifies information about the unmanaged user image to base the scale set on." + }, + "vhdContainers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the container urls that are used to store operating system disks for the scale set." + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + } + }, + "required": [ + "createOption" + ], + "description": "Describes a virtual machine scale set operating system disk." + }, + "VirtualMachineScaleSetUpdateOSDisk": { + "properties": { + "caching": { + "$ref": "#/definitions/Caching", + "description": "The caching type." + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of the operating system disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk should not exist." + }, + "vhdContainers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of virtual hard disk container uris." + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + } + }, + "description": "Describes virtual machine scale set operating system disk Update Object. This should be used for Updating VMSS OS Disk." + }, + "VirtualMachineScaleSetDataDisk": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "The create option." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB." + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a virtual machine scale set data disk." + }, + "VirtualMachineScaleSetStorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/VirtualMachineScaleSetOSDisk", + "description": "Specifies information about the operating system disk used by the virtual machines in the scale set.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "Specifies the parameters that are used to add data disks to the virtual machines in the scale set.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + } + }, + "description": "Describes a virtual machine scale set storage profile." + }, + "VirtualMachineScaleSetUpdateStorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "The image reference." + }, + "osDisk": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSDisk", + "description": "The OS disk." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "The data disks." + } + }, + "description": "Describes a virtual machine scale set storage profile." + }, + "ApiEntityReference": { + "properties": { + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..." + } + }, + "description": "The API entity reference." + }, + "VirtualMachineScaleSetIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/ApiEntityReference", + "description": "Specifies the identifier of the subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer." + }, + "loadBalancerInboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to inbound Nat pools of the load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer" + } + }, + "description": "Describes a virtual machine scale set network profile's IP configuration properties." + }, + "VirtualMachineScaleSetUpdateIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/ApiEntityReference", + "description": "The subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary IP Configuration in case the network interface has more than one IP Configuration." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The application gateway backend address pools." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The load balancer backend address pools." + }, + "loadBalancerInboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The load balancer inbound nat pools." + } + }, + "description": "Describes a virtual machine scale set network profile's IP configuration properties." + }, + "VirtualMachineScaleSetIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetIPConfigurationProperties" + } + }, + "required": [ + "name" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetUpdateIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetNetworkConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetIPConfiguration" + }, + "description": "Specifies the IP configurations of the network interface." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + } + }, + "required": [ + "ipConfigurations" + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetUpdateNetworkConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Whether this is a primary NIC on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfiguration" + }, + "description": "The virtual machine scale set IP Configuration." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + } + }, + "description": "Describes a virtual machine scale set updatable network profile's IP configuration.Use this object for updating network profile's IP Configuration." + }, + "VirtualMachineScaleSetNetworkConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationProperties" + } + }, + "required": [ + "name" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's network configurations." + }, + "VirtualMachineScaleSetUpdateNetworkConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's network configurations." + }, + "VirtualMachineScaleSetNetworkConfigurationDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses" + } + }, + "description": "Describes a virtual machines scale sets network configuration's DNS settings." + }, + "VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The Domain name label.The concatenation of the domain name label and vm index will be the domain name labels of the PublicIPAddress resources that will be created" + } + }, + "required": [ + "domainNameLabel" + ], + "description": "Describes a virtual machines scale sets network configuration's DNS settings." + }, + "VirtualMachineScaleSetIpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "IP tag associated with the public IP. Example: SQL, Storage etc." + } + }, + "description": "Contains the IP tag associated with the public IP address." + }, + "VirtualMachineScaleSetPublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationProperties" + } + }, + "required": [ + "name" + ], + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetUpdatePublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties" + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetPublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + "description": "The dns settings to be applied on the publicIP addresses ." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetIpTag" + }, + "description": "The list of IP tags associated with the public IP address." + }, + "publicIPPrefix": { + "$ref": "#/definitions/SubResource", + "description": "The PublicIPPrefix from which to allocate publicIP addresses." + }, + "publicIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + "description": "The dns settings to be applied on the publicIP addresses ." + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetNetworkProfile": { + "properties": { + "healthProbe": { + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'." + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set network profile." + }, + "VirtualMachineScaleSetUpdateNetworkProfile": { + "properties": { + "healthProbe": { + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'." + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set network profile." + }, + "VirtualMachineScaleSetExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "provisionAfterExtensions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Collection of extension names after which this extension needs to be provisioned." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the extension." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtensionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "The list of VM scale set extensions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of VM scale set extensions. Call ListNext() with this to fetch the next page of VM scale set extensions." + } + }, + "required": [ + "value" + ], + "description": "The List VM scale set extension operation response." + }, + "VirtualMachineScaleSetExtensionProfile": { + "properties": { + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "The virtual machine scale set child extension resources." + } + }, + "description": "Describes a virtual machine scale set extension profile." + }, + "VirtualMachineScaleSetVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetOSProfile", + "description": "Specifies the operating system settings for the virtual machines in the scale set." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile", + "description": "Specifies properties of the network interfaces of the virtual machines in the scale set." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "extensionProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile", + "description": "Specifies a collection of settings for extensions installed on virtual machines in the scale set." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "priority": { + "type": "string", + "description": "Specifies the priority for the virtual machines in the scale set.

    Minimum api-version: 2017-10-30-preview", + "enum": [ + "Regular", + "Low" + ], + "x-ms-enum": { + "name": "VirtualMachinePriorityTypes", + "modelAsString": true + } + }, + "evictionPolicy": { + "type": "string", + "description": "Specifies the eviction policy for virtual machines in a low priority scale set.

    Minimum api-version: 2017-10-30-preview", + "enum": [ + "Deallocate", + "Delete" + ], + "x-ms-enum": { + "name": "VirtualMachineEvictionPolicyTypes", + "modelAsString": true + } + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a low priority VMSS.

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + } + }, + "description": "Describes a virtual machine scale set virtual machine profile." + }, + "VirtualMachineScaleSetUpdateVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSProfile", + "description": "The virtual machine scale set OS profile." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateStorageProfile", + "description": "The virtual machine scale set storage profile." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkProfile", + "description": "The virtual machine scale set network profile." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "The virtual machine scale set diagnostics profile." + }, + "extensionProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile", + "description": "The virtual machine scale set extension profile." + }, + "licenseType": { + "type": "string", + "description": "The license type, which is for bring your own license scenario." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a low priority VMSS.

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + } + }, + "description": "Describes a virtual machine scale set virtual machine profile." + }, + "VirtualMachineScaleSetProperties": { + "properties": { + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "description": "The upgrade policy." + }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, + "virtualMachineProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProfile", + "description": "The virtual machine profile." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "overprovision": { + "type": "boolean", + "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned." + }, + "doNotRunExtensionsOnOverprovisionedVMs": { + "type": "boolean", + "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs." + }, + "uniqueId": { + "readOnly": true, + "type": "string", + "description": "Specifies the ID which uniquely identifies a Virtual Machine Scale Set." + }, + "singlePlacementGroup": { + "type": "boolean", + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + }, + "zoneBalance": { + "type": "boolean", + "description": "Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count for each placement group." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

    Minimum api-version: 2018-04-01." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetUpdateProperties": { + "properties": { + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "description": "The upgrade policy." + }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, + "virtualMachineProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateVMProfile", + "description": "The virtual machine profile." + }, + "overprovision": { + "type": "boolean", + "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned." + }, + "doNotRunExtensionsOnOverprovisionedVMs": { + "type": "boolean", + "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs." + }, + "singlePlacementGroup": { + "type": "boolean", + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSet": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The virtual machine scale set sku." + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineScaleSetIdentity", + "description": "The identity of the virtual machine scale set, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetVMReimageParameters": { + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineReimageParameters" + } + ], + "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters." + }, + "VirtualMachineScaleSetReimageParameters": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + } + ], + "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters." + }, + "VirtualMachineScaleSetUpdate": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The virtual machine scale set sku." + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "The purchase plan when deploying a virtual machine scale set from VM Marketplace images." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineScaleSetIdentity", + "description": "The identity of the virtual machine scale set, if configured." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetVMInstanceIDs": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set." + } + }, + "description": "Specifies a list of virtual machine instance IDs from the VM scale set." + }, + "VirtualMachineScaleSetVMInstanceRequiredIDs": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids." + } + }, + "required": [ + "instanceIds" + ], + "description": "Specifies a list of virtual machine instance IDs from the VM scale set." + }, + "VirtualMachineStatusCodeCount": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The instance view status code." + }, + "count": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances having a particular status code." + } + }, + "description": "The status code and count of the virtual machine scale set instance view status summary." + }, + "VirtualMachineScaleSetInstanceViewStatusesSummary": { + "properties": { + "statusesSummary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineStatusCodeCount" + }, + "description": "The extensions information." + } + }, + "description": "Instance view statuses summary for virtual machines of a virtual machine scale set." + }, + "VirtualMachineScaleSetVMExtensionsSummary": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The extension name." + }, + "statusesSummary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineStatusCodeCount" + }, + "description": "The extensions information." + } + }, + "description": "Extensions summary for virtual machines of a virtual machine scale set." + }, + "VirtualMachineScaleSetInstanceView": { + "properties": { + "virtualMachine": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceViewStatusesSummary", + "readOnly": true, + "description": "The instance view status summary for the virtual machine scale set." + }, + "extensions": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionsSummary" + }, + "description": "The extensions information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine scale set." + }, + "VirtualMachineScaleSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The list of virtual machine scale sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of VMSS." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineScaleSetListWithLinkResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The list of virtual machine scale sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of Virtual Machine Scale Sets." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineScaleSetSkuCapacity": { + "properties": { + "minimum": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The minimum capacity." + }, + "maximum": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum capacity that can be set." + }, + "defaultCapacity": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The default capacity." + }, + "scaleType": { + "readOnly": true, + "type": "string", + "description": "The scale type applicable to the sku.", + "enum": [ + "Automatic", + "None" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetSkuScaleType", + "modelAsString": false + } + } + }, + "description": "Describes scaling information of a sku." + }, + "VirtualMachineScaleSetSku": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the sku applies to." + }, + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "The Sku." + }, + "capacity": { + "$ref": "#/definitions/VirtualMachineScaleSetSkuCapacity", + "readOnly": true, + "description": "Specifies the number of virtual machines in the scale set." + } + }, + "description": "Describes an available virtual machine scale set sku." + }, + "VirtualMachineScaleSetListSkusResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetSku" + }, + "description": "The list of skus available for the virtual machine scale set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set Skus. Call ListNext() with this to fetch the next page of VMSS Skus." + } + }, + "required": [ + "value" + ], + "description": "The Virtual Machine Scale Set List Skus operation response." + }, + "RollbackStatusInfo": { + "properties": { + "successfullyRolledbackInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances which have been successfully rolled back." + }, + "failedRolledbackInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances which failed to rollback." + }, + "rollbackError": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "Error details if OS rollback failed." + } + }, + "description": "Information about rollback on failed VM instances after a OS Upgrade operation." + }, + "UpgradeOperationHistoryStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "UpgradeState", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "UpgradeOperationHistoricalStatusInfoProperties": { + "properties": { + "runningStatus": { + "$ref": "#/definitions/UpgradeOperationHistoryStatus", + "readOnly": true, + "description": "Information about the overall status of the upgrade operation." + }, + "progress": { + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "readOnly": true, + "description": "Counts of the VMs in each state." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "Error Details for this upgrade if there are any." + }, + "startedBy": { + "readOnly": true, + "type": "string", + "description": "Invoker of the Upgrade Operation", + "enum": [ + "Unknown", + "User", + "Platform" + ], + "x-ms-enum": { + "name": "UpgradeOperationInvoker", + "modelAsString": false + } + }, + "targetImageReference": { + "$ref": "#/definitions/ImageReference", + "readOnly": true, + "description": "Image Reference details" + }, + "rollbackInfo": { + "$ref": "#/definitions/RollbackStatusInfo", + "readOnly": true, + "description": "Information about OS rollback if performed" + } + }, + "description": "Describes each OS upgrade on the Virtual Machine Scale Set." + }, + "UpgradeOperationHistoricalStatusInfo": { + "properties": { + "properties": { + "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfoProperties", + "readOnly": true, + "description": "Information about the properties of the upgrade operation." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Resource location" + } + }, + "description": "Virtual Machine Scale Set OS Upgrade History operation response." + }, + "VirtualMachineScaleSetListOSUpgradeHistory": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfo" + }, + "description": "The list of OS upgrades performed on the virtual machine scale set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of OS Upgrade History. Call ListNext() with this to fetch the next page of history of upgrades." + } + }, + "required": [ + "value" + ], + "description": "List of Virtual Machine Scale Set OS Upgrade History operation response." + }, + "VirtualMachineScaleSetVMProperties": { + "properties": { + "latestModelApplied": { + "readOnly": true, + "type": "boolean", + "description": "Specifies whether the latest model has been applied to the virtual machine." + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Azure VM unique ID." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the virtual machine." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "networkProfileConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetVMNetworkProfileConfiguration", + "description": "Specifies the network profile configuration of the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

    For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "modelDefinitionApplied": { + "readOnly": true, + "type": "string", + "description": "Specifies whether the model applied to the virtual machine is the model of the virtual machine scale set or the customized model for the virtual machine." + }, + "protectionPolicy": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProtectionPolicy", + "description": "Specifies the protection policy of the virtual machine." + } + }, + "description": "Describes the properties of a virtual machine scale set virtual machine." + }, + "VirtualMachineScaleSetVM": { + "properties": { + "instanceId": { + "readOnly": true, + "type": "string", + "description": "The virtual machine instance ID." + }, + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "The virtual machine SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetVMProperties" + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The virtual machine child extension resources." + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a virtual machine scale set virtual machine." + }, + "VirtualMachineScaleSetVMInstanceView": { + "properties": { + "platformUpdateDomain": { + "type": "integer", + "format": "int32", + "description": "The Update Domain count." + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "The Fault Domain count." + }, + "rdpThumbPrint": { + "type": "string", + "description": "The Remote desktop certificate thumbprint." + }, + "vmAgent": { + "$ref": "#/definitions/VirtualMachineAgentInstanceView", + "description": "The VM Agent running on the virtual machine." + }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, + "disks": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskInstanceView" + }, + "description": "The disks information." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView" + }, + "description": "The extensions information." + }, + "vmHealth": { + "readOnly": true, + "$ref": "#/definitions/VirtualMachineHealthStatus", + "description": "The health status for the VM." + }, + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnosticsInstanceView", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "placementGroupId": { + "type": "string", + "description": "The placement group in which the VM is running. If the VM is deallocated it will not have a placementGroupId." + } + }, + "description": "The instance view of a virtual machine scale set VM." + }, + "VirtualMachineScaleSetVMNetworkProfileConfiguration": { + "properties": { + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set VM network profile." + }, + "VirtualMachineScaleSetVMProtectionPolicy": { + "properties": { + "protectFromScaleIn": { + "type": "boolean", + "description": "Indicates that the virtual machine scale set VM shouldn't be considered for deletion during a scale-in operation." + }, + "protectFromScaleSetActions": { + "type": "boolean", + "description": "Indicates that model updates or actions (including scale-in) initiated on the virtual machine scale set should not be applied to the virtual machine scale set VM." + } + }, + "description": "The protection policy of a virtual machine scale set VM." + }, + "ScheduledEventsProfile": { + "type": "object", + "properties": { + "terminateNotificationProfile": { + "$ref": "#/definitions/TerminateNotificationProfile", + "description": "Specifies Terminate Scheduled Event related configurations." + } + } + }, + "TerminateNotificationProfile": { + "type": "object", + "properties": { + "notBeforeTimeout": { + "type": "string", + "description": "Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)" + }, + "enable": { + "type": "boolean", + "description": "Specifies whether the Terminate Scheduled event is enabled or disabled." + } + } + }, + "VirtualMachineHealthStatus": { + "properties": { + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The health status information for the VM." + } + }, + "description": "The health status of the VM." + }, + "VirtualMachineScaleSetVMListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "The list of virtual machine scale sets VMs." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set VMs. Call ListNext() with this to fetch the next page of VMSS VMs" + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine Scale Set VMs operation response." + }, + "RollingUpgradeStatusInfo": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RollingUpgradeStatusInfoProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeStatusInfoProperties": { + "properties": { + "policy": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The rolling upgrade policies applied for this upgrade." + }, + "runningStatus": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeRunningStatus", + "description": "Information about the current running state of the overall upgrade." + }, + "progress": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/ApiError", + "description": "Error details for this upgrade, if there are any." + } + }, + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeRunningStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "RollingUpgradeStatusCode", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "lastAction": { + "type": "string", + "readOnly": true, + "description": "The last action performed on the rolling upgrade.", + "enum": [ + "Start", + "Cancel" + ], + "x-ms-enum": { + "name": "RollingUpgradeActionType", + "modelAsString": false + } + }, + "lastActionTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last action time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "RollingUpgradeProgressInfo": { + "properties": { + "successfulInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have been successfully upgraded." + }, + "failedInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have failed to be upgraded successfully." + }, + "inProgressInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that are currently being upgraded." + }, + "pendingInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have not yet begun to be upgraded." + } + }, + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "Resource": { + "description": "The Resource model definition.", + "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" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "RecoveryWalkResponse": { + "properties": { + "walkPerformed": { + "type": "boolean", + "readOnly": true, + "description": "Whether the recovery walk was performed" + }, + "nextPlatformUpdateDomain": { + "type": "integer", + "readOnly": true, + "description": "The next update domain that needs to be walked. Null means walk spanning all update domains has been completed" + } + }, + "description": "Response after calling a manual recovery walk" + }, + "RequestRateByIntervalInput": { + "properties": { + "intervalLength": { + "type": "string", + "description": "Interval value in minutes used to create LogAnalytics call rate logs.", + "enum": [ + "ThreeMins", + "FiveMins", + "ThirtyMins", + "SixtyMins" + ], + "x-ms-enum": { + "name": "IntervalInMins", + "modelAsString": false + } + } + }, + "required": [ + "intervalLength" + ], + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getRequestRateByInterval Api." + }, + "ThrottledRequestsInput": { + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getThrottledRequests Api." + }, + "LogAnalyticsInputBase": { + "properties": { + "blobContainerSasUri": { + "type": "string", + "description": "SAS Uri of the logging blob container to which LogAnalytics Api writes output logs to." + }, + "fromTime": { + "type": "string", + "format": "date-time", + "description": "From time of the query" + }, + "toTime": { + "type": "string", + "format": "date-time", + "description": "To time of the query" + }, + "groupByThrottlePolicy": { + "type": "boolean", + "description": "Group query result by Throttle Policy applied." + }, + "groupByOperationName": { + "type": "boolean", + "description": "Group query result by Operation Name." + }, + "groupByResourceName": { + "type": "boolean", + "description": "Group query result by Resource Name." + } + }, + "required": [ + "blobContainerSasUri", + "fromTime", + "toTime" + ], + "description": "Api input base class for LogAnalytics Api." + }, + "LogAnalyticsOperationResult": { + "properties": { + "properties": { + "readOnly": true, + "$ref": "#/definitions/LogAnalyticsOutput", + "description": "LogAnalyticsOutput" + } + }, + "description": "LogAnalytics operation status response" + }, + "LogAnalyticsOutput": { + "properties": { + "output": { + "readOnly": true, + "type": "string", + "description": "Output file Uri path to blob container." + } + }, + "description": "LogAnalytics output properties" + }, + "VMScaleSetConvertToSinglePlacementGroupInput": { + "properties": { + "activePlacementGroupId": { + "type": "string", + "description": "Id of the placement group in which you want future virtual machine instances to be placed. To query placement group Id, please use Virtual Machine Scale Set VMs - Get API. If not provided, the platform will choose one with maximum number of virtual machine instances." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/disk.json new file mode 100644 index 000000000000..cdf9b4c52e82 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/disk.json @@ -0,0 +1,1945 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2019-07-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}": { + "put": { + "tags": [ + "Disks" + ], + "operationId": "Disks_CreateOrUpdate", + "description": "Creates or updates a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Disk" + }, + "description": "Disk object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Create an empty managed disk.": { + "$ref": "./examples/CreateAnEmptyManagedDisk.json" + }, + "Create a managed disk from a platform image.": { + "$ref": "./examples/CreateAManagedDiskFromAPlatformImage.json" + }, + "Create a managed disk from an existing managed disk in the same or different subscription.": { + "$ref": "./examples/CreateAManagedDiskFromAnExistingManagedDisk.json" + }, + "Create a managed disk by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a managed disk by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json" + }, + "Create a managed disk by copying a snapshot.": { + "$ref": "./examples/CreateAManagedDiskByCopyingASnapshot.json" + }, + "Create a managed upload disk.": { + "$ref": "./examples/CreateAManagedUploadDisk.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Update", + "description": "Updates (patches) a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskUpdate" + }, + "description": "Disk object supplied in the body of the Patch disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Gets information about a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Get information about a managed disk.": { + "$ref": "./examples/GetInformationAboutAManagedDisk.json" + } + } + }, + "delete": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Delete", + "description": "Deletes a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk is deleted, this is an expected error code." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_ListByResourceGroup", + "description": "Lists all the disks under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a resource group.": { + "$ref": "./examples/ListManagedDisksInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Lists all the disks under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a subscription.": { + "$ref": "./examples/ListManagedDisksInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_GrantAccess", + "description": "Grants access to a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_RevokeAccess", + "description": "Revokes access to a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": { + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "description": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "Snapshot object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Create a snapshot from an existing snapshot in the same or a different subscription.": { + "$ref": "./examples/CreateASnapshotFromAnExistingSnapshot.json" + }, + "Create a snapshot by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a snapshot by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "description": "Updates (patches) a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotUpdate" + }, + "description": "Snapshot object supplied in the body of the Patch snapshot operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "description": "Gets information about a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Get information about a snapshot.": { + "$ref": "./examples/GetInformationAboutASnapshot.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "description": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the snapshot is deleted, this is an expected error code." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "description": "Lists snapshots under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a resource group.": { + "$ref": "./examples/ListSnapshotsInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "description": "Lists snapshots under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a subscription.": { + "$ref": "./examples/ListSnapshotsInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_GrantAccess", + "description": "Grants access to a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get snapshot access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_RevokeAccess", + "description": "Revokes access to a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}": { + "put": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_CreateOrUpdate", + "description": "Creates or updates a disk encryption set", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "disk encryption set object supplied in the body of the Put disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk encryption set.": { + "$ref": "./examples/CreateADiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Update", + "description": "Updates (patches) a disk encryption set.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSetUpdate" + }, + "description": "disk encryption set object supplied in the body of the Patch disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk encryption set.": { + "$ref": "./examples/UpdateADiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Get", + "description": "Gets information about a disk encryption set.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk encryption set.": { + "$ref": "./examples/GetInformationAboutADiskEncryptionSet.json" + } + } + }, + "delete": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Delete", + "description": "Deletes a disk encryption set.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk encryption set is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk encryption set.": { + "$ref": "./examples/DeleteADiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListByResourceGroup", + "description": "Lists all the disk encryption sets under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a resource group.": { + "$ref": "./examples/ListDiskEncryptionSetsInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_List", + "description": "Lists all the disk encryption sets under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a subscription.": { + "$ref": "./examples/ListDiskEncryptionSetsInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Resource": { + "description": "The Resource model definition.", + "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" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "Disk": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + }, + "sku": { + "$ref": "#/definitions/DiskSku" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Logical zone list for Disk." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Disk resource." + }, + "DiskUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/DiskSku" + } + }, + "description": "Disk update resource." + }, + "DiskList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Disk" + }, + "description": "A list of disks." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks." + } + }, + "required": [ + "value" + ], + "description": "The List Disks operation response." + }, + "DiskSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS" + ], + "x-ms-enum": { + "name": "DiskStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "UltraSSD_LRS", + "description": "Ultra SSD locally redundant storage. Best for IO-intensive workloads such as SAP HANA, top tier databases (for example, SQL, Oracle), and other transaction-heavy workloads." + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, or UltraSSD_LRS." + }, + "SnapshotSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SnapshotStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage" + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage" + }, + { + "value": "Standard_ZRS", + "description": "Standard zone redundant storage" + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS." + }, + "DiskProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "creationData": { + "$ref": "#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int32", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskState": { + "type": "string", + "description": "The state of the disk.", + "readOnly": true, + "enum": [ + "Unattached", + "Attached", + "Reserved", + "ActiveSAS", + "ReadyToUpload", + "ActiveUpload" + ], + "x-ms-enum": { + "name": "DiskState", + "modelAsString": true, + "values": [ + { + "value": "Unattached", + "description": "The disk is not being used and can be attached to a VM." + }, + { + "value": "Attached", + "description": "The disk is currently mounted to a running VM." + }, + { + "value": "Reserved", + "description": "The disk is mounted to a stopped-deallocated VM" + }, + { + "value": "ActiveSAS", + "description": "The disk currently has an Active SAS Uri associated with it." + }, + { + "value": "ReadyToUpload", + "description": "A disk is ready to be created by upload by requesting a write token." + }, + { + "value": "ActiveUpload", + "description": "A disk is created for upload and a write token has been issued for uploading to it." + } + ] + } + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "SnapshotProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "creationData": { + "$ref": "#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "incremental": { + "type": "boolean", + "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + } + }, + "required": [ + "creationData" + ], + "description": "Snapshot resource properties." + }, + "EncryptionSetProperties": { + "properties": { + "activeKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "The key vault key which is currently used by this disk encryption set." + }, + "previousKeys": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/KeyVaultAndKeyReference" + }, + "description": "A readonly collection of key vault keys previously used by this disk encryption set while a key rotation is in progress. It will be empty if there is no ongoing key rotation." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk encryption set provisioning state." + } + } + }, + "EncryptionSettingsCollection": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionSettingsElement" + }, + "description": "A collection of encryption settings, one for each disk volume." + }, + "encryptionSettingsVersion": { + "type": "string", + "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption." + } + }, + "required": [ + "enabled" + ], + "description": "Encryption settings for disk or snapshot" + }, + "EncryptionSettingsElement": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndSecretReference", + "description": "Key Vault Secret Url and vault id of the disk encryption key" + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "Key Vault Key Url and vault id of the key encryption key. KeyEncryptionKey is optional and when provided is used to unwrap the disk encryption key." + } + }, + "description": "Encryption settings for one disk volume." + }, + "KeyVaultAndSecretReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "KeyVaultAndKeyReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "SourceVault": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "Encryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey" + ], + "x-ms-enum": { + "name": "EncryptionType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithPlatformKey", + "description": "Disk is encrypted with XStore managed key at rest. It is the default encryption type." + }, + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Disk is encrypted with Customer managed key at rest." + } + ] + } + } + }, + "required": [ + "type" + ], + "description": "Encryption at rest settings for disk or snapshot" + }, + "DiskUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int32", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + } + }, + "description": "Disk resource update properties." + }, + "SnapshotUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + } + }, + "description": "Snapshot resource update properties." + }, + "DiskEncryptionSetUpdateProperties": { + "properties": { + "activeKey": + { + "$ref": "#/definitions/KeyVaultAndKeyReference" + } + }, + "description": "disk encryption set resource update properties." + }, + "CreationData": { + "properties": { + "createOption": { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore", + "Upload" + ], + "x-ms-enum": { + "name": "DiskCreateOption", + "modelAsString": true, + "values": [ + { + "value": "Empty", + "description": "Create an empty data disk of a size given by diskSizeGB." + }, + { + "value": "Attach", + "description": "Disk will be attached to a VM." + }, + { + "value": "FromImage", + "description": "Create a new disk from a platform image specified by the given imageReference." + }, + { + "value": "Import", + "description": "Create a disk by importing from a blob specified by a sourceUri in a storage account specified by storageAccountId." + }, + { + "value": "Copy", + "description": "Create a new disk or snapshot by copying from a disk or snapshot specified by the given sourceResourceId." + }, + { + "value": "Restore", + "description": "Create a new disk by copying from a backup recovery point." + }, + { + "value": "Upload", + "description": "Create a new disk by obtaining a write token and using it to directly upload the contents of the disk." + } + ] + }, + "description": "This enumerates the possible sources of a disk's creation." + }, + "storageAccountId": { + "type": "string", + "description": "If createOption is Import, the Azure Resource Manager identifier of the storage account containing the blob to import as a disk. Required only if the blob is in a different subscription" + }, + "imageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Disk source information." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + }, + "sourceUniqueId": { + "readOnly": true, + "type": "string", + "description": "If this field is set, this is the unique id identifying the source of this resource." + }, + "uploadSizeBytes": { + "type": "integer", + "format": "int64", + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "ImageDiskReference": { + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Image Repository or user image reference." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "GrantAccessData": { + "properties": { + "access": { + "type": "string", + "enum": [ + "None", + "Read", + "Write" + ], + "x-ms-enum": { + "name": "AccessLevel", + "modelAsString": true + } + }, + "durationInSeconds": { + "type": "integer", + "format": "int32", + "description": "Time duration in seconds until the SAS access expires." + } + }, + "required": [ + "access", + "durationInSeconds" + ], + "description": "Data used for requesting a SAS." + }, + "AccessUri": { + "properties": { + "accessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a disk." + } + }, + "description": "A disk access SAS uri." + }, + "Snapshot": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "Unused. Always Null." + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Snapshot resource." + }, + "SnapshotUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + } + }, + "description": "Snapshot update resource." + }, + "SnapshotList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "A list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "required": [ + "value" + ], + "description": "The List Snapshots operation response." + }, + "ResourceIdentity": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetIdentityType", + "modelAsString": true + }, + "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The object id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-identity-principal-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + } + }, + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "DiskEncryptionSet": { + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EncryptionSetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "disk encryption set resource." + }, + "DiskEncryptionSetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskEncryptionSetUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "disk encryption set update resource." + }, + "DiskEncryptionSetList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "A list of disk encryption sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk encryption sets. Call ListNext() with this to fetch the next page of disk encryption sets." + } + }, + "required": [ + "value" + ], + "description": "The List disk encryption set operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "DiskNameParameter": { + "name": "diskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The max name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "DiskEncryptionSetNameParameter": { + "name": "diskEncryptionSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..46c90a6dacec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "caching": "ReadWrite", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..0cfc745615f9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,145 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "osType": "Windows", + "createOption": "FromImage", + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + } + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateADiskEncryptionSet.json new file mode 100644 index 000000000000..6c71c6e1c87c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateADiskEncryptionSet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByCopyingASnapshot.json new file mode 100644 index 000000000000..a8c9f5ff9adf --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByCopyingASnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..b44f596c8fb6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..58a6d7af3c92 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAPlatformImage.json new file mode 100644 index 000000000000..b2e22fa5975e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAPlatformImage.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json new file mode 100644 index 000000000000..9ca47d0a1429 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk2", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedUploadDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedUploadDisk.json new file mode 100644 index 000000000000..998666f7ed65 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAManagedUploadDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json new file mode 100644 index 000000000000..220b0bdf6695 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "osDisk", + "vhdContainers": [ + "http://{existing-storage-account-name-0}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-1}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-2}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-3}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-4}.blob.core.windows.net/vhdContainer" + ] + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json new file mode 100644 index 000000000000..7d0338300cee --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -0,0 +1,213 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk0.vhd" + } + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk1.vhd" + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetFromACustomImage.json new file mode 100644 index 000000000000..25e6989304f6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetFromACustomImage.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..98a86b68924a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json new file mode 100644 index 000000000000..788cb0980fd4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/{existing-application-gateway-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json new file mode 100644 index 000000000000..bc3631a913c8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json @@ -0,0 +1,251 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + }, + "publicIPAddressConfiguration": { + "name": "{vmss-name}", + "properties": { + "publicIPAddressVersion": "IPv4" + } + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/inboundNatPools/{existing-nat-pool-name}" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ] + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAutomaticRepairs.json new file mode 100644 index 000000000000..b24cd1e84500 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT3M", + "maxInstanceRepairsPercent": 100 + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } + } + \ No newline at end of file diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithBootDiagnostics.json new file mode 100644 index 000000000000..ff3381b48947 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithBootDiagnostics.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithDiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithDiffOsDisk.json new file mode 100644 index 000000000000..18304f85e883 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithDiffOsDisk.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json new file mode 100644 index 000000000000..a5dc69acfe5a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json @@ -0,0 +1,270 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Succeeded" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPasswordAuthentication.json new file mode 100644 index 000000000000..209950e4b1b3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPasswordAuthentication.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPremiumStorage.json new file mode 100644 index 000000000000..0d43febd86fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithPremiumStorage.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithSshAuthentication.json new file mode 100644 index 000000000000..b8912565a8ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithSshAuthentication.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json new file mode 100644 index 000000000000..b2afe164e36b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithVMsInDifferentZones.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithVMsInDifferentZones.json new file mode 100644 index 000000000000..6bd73fbae2f0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScaleSetWithVMsInDifferentZones.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "location": "centralus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + } + }, + "zones": [ + "1", + "3" + ] + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Succeeded" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Creating" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..6e77c5e1e3d2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json @@ -0,0 +1,255 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..201cdd1711d6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..a58c83032c32 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotFromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotFromAnExistingSnapshot.json new file mode 100644 index 000000000000..33a1e75795bc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateASnapshotFromAnExistingSnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmFromACustomImage.json new file mode 100644 index 000000000000..dd4aeadff6d9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmFromACustomImage.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmInAnAvailabilitySet.json new file mode 100644 index 000000000000..6bca5a058837 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmInAnAvailabilitySet.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithADiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithADiffOsDisk.json new file mode 100644 index 000000000000..2303001c813d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithADiffOsDisk.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..26c4a9d6680a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithBootDiagnostics.json new file mode 100644 index 000000000000..325fddd66658 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithBootDiagnostics.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..38817d67e796 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithDiskEncryptionSetResource.json @@ -0,0 +1,229 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskencryptionset-name}" + } + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithEmptyDataDisks.json new file mode 100644 index 000000000000..46bfda2b77af --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithEmptyDataDisks.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": false + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPasswordAuthentication.json new file mode 100644 index 000000000000..cdc2fb319f3b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPasswordAuthentication.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPremiumStorage.json new file mode 100644 index 000000000000..9e56529d4ab8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithPremiumStorage.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithSshAuthentication.json new file mode 100644 index 000000000000..cc5dcc09b2cf --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAVmWithSshAuthentication.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "{image_sku}", + "publisher": "{image_publisher}", + "version": "latest", + "offer": "{image_offer}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnAvailabilitySet.json new file mode 100644 index 000000000000..0b034a17a888 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnAvailabilitySet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "availabilitySetName": "myAvailabilitySet", + "parameters": { + "location": "westus", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Classic" + }, + "name": "myAvailabilitySet", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + }, + "location": "westus", + "type": "Microsoft.Compute/availabilitySets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnEmptyManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnEmptyManagedDisk.json new file mode 100644 index 000000000000..8cffe4653a4c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnEmptyManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlob.json new file mode 100644 index 000000000000..192cbe979bc8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlob.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json new file mode 100644 index 000000000000..3536694c5a4a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDisk.json new file mode 100644 index 000000000000..5d6f7761a5b4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDisk.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json new file mode 100644 index 000000000000..eaad87dd0151 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshot.json new file mode 100644 index 000000000000..75ed945d1412 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshot.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json new file mode 100644 index 000000000000..63788cf408de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAVM.json new file mode 100644 index 000000000000..20039c541b32 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageFromAVM.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json new file mode 100644 index 000000000000..c4d1aa07e629 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json new file mode 100644 index 000000000000..124198ee9856 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json new file mode 100644 index 000000000000..2712e8bf9abe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHost.json new file mode 100644 index 000000000000..be99526847e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHost.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "parameters": { + "location": "westus", + "tags": { + "department": "HR" + }, + "properties": { + "platformFaultDomain": 1 + }, + "sku": { + "name": "DSv3-Type1" + } + }, + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myDedicatedHost" + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHost", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}" + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": false, + "licenseType": "Windows_Server_Hybrid", + "hostId": "{GUID}" + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "name": "myDedicatedHost", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "sku": { + "name": "DSv3-Type1" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHostGroup.json new file mode 100644 index 000000000000..3d4ec8a42903 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateADedicatedHostGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "parameters": { + "location": "westus", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3 + } + } + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHostGroup", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3, + "hosts": [] + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [] + }, + "location": "westus", + "tags": { + "department": "finance", + "owner": "myCompany" + }, + "name": "myDedicatedHostGroup", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateAProximityPlacementGroup.json new file mode 100644 index 000000000000..81e18a1fa387 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateAProximityPlacementGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "location": "westus", + "properties": { + "proximityPlacementGroupType": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + }, + "201": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..080c96490c75 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName":"myVMExtension", + "api-version": "2019-07-01", + "extensionParameters": { + "location": "westus", + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { "UserName": "xyz@microsoft.com" } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type":"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": {"UserName":"xyz@microsoft.com"} + } + } + }, + "200": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type":"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": {"UserName":"xyz@microsoft.com"} + } + } + } + } + } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteADiskEncryptionSet.json new file mode 100644 index 000000000000..a33b02d8bbc9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteADiskEncryptionSet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskEncryptionSetName": "myDiskEncryptionSet", + "api-version": "2019-07-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteAProximityPlacementGroup.json new file mode 100644 index 000000000000..78c6df17f36c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteAProximityPlacementGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..caba488648b0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName":"myVMExtension", + "api-version": "2019-07-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } + } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHost.json new file mode 100644 index 000000000000..0da47da294d4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHost.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myHost" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}", + "provisioningTime": "2019-06-27T01:02:38.3138469+00:00", + "virtualMachines": [ + { + "id": "/subscriptions/subId/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/vm1" + } + ], + "provisioningState": "Succeeded", + "instanceView": { + "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407", + "availableCapacity": { + "allocatableVMs": [ + { + "vmSize": "Standard_A1", + "count": 10 + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded" + }, + { + "code": "HealthState/available", + "level": "Info", + "displayStatus": "Host available" + } + ] + } + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "name": "myHost" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHostGroup.json new file mode 100644 index 000000000000..f383d65e8771 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetADedicatedHostGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [ + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost1" + }, + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost2" + } + ] + }, + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "name": "myDedicatedHostGroup", + "zones": [ + "3" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetAProximityPlacementGroup.json new file mode 100644 index 000000000000..6aa8dad877ec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetAProximityPlacementGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutADiskEncryptionSet.json new file mode 100644 index 000000000000..4226d9f36200 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutADiskEncryptionSet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAManagedDisk.json new file mode 100644 index 000000000000..7b81f6786542 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAManagedDisk.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskName": "myManagedDisk" + }, + "responses": { + "200": { + "body": { + "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec", + "sku": { + "name": "Standard_LRS" + }, + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutASnapshot.json new file mode 100644 index 000000000000..dbfb784cc43d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutASnapshot.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "snapshotName": "mySnapshot" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 100, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAnImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAnImage.json new file mode 100644 index 000000000000..133e970821a1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetInformationAboutAnImage.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "imageName": "myImage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachine.json new file mode 100644 index 000000000000..434d91c22485 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachine.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "id" : "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type" : "Microsoft.Compute/virtualMachines", + "location": "West US", + "tags" : { + "myTag1" : "tagValue1" + }, + "properties": { + "vmId" : "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1", + "availabilitySet" : { + "id" : "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet" + }, + "proximityPlacementGroup" : { + "id" : "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/my-ppg01" + }, + "hardwareProfile" : { + "vmSize" : "Standard_DS3_v2" + }, + "storageProfile" : { + "imageReference" : { + "publisher" : "MicrosoftWindowsServer", + "offer" : "WindowsServer", + "sku" : "2016-Datacenter", + "version" : "latest" + }, + "osDisk" : { + "osType": "Windows", + "name": "myOsDisk", + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk" + }, + "diskSizeGB": 30 + }, + "dataDisks" : [ + { + "lun": 0, + "name": "myDataDisk0", + "createOption": "Empty", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0" + }, + "diskSizeGB": 30 + }, + { + "lun": 1, + "name": "myDataDisk1", + "createOption": "Attach", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1" + }, + "diskSizeGB": 100 + } + ] + }, + "osProfile" : { + "computerName" : "myVM", + "adminUsername" : "admin", + "windowsConfiguration" : { + "provisionVMAgent" : true, + "enableAutomaticUpdates" : false + }, + "secrets" : [ + ] + }, + "networkProfile" : { + "networkInterfaces" : [{ + "id" : "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}" + } + ] + }, + "diagnosticsProfile" : { + "bootDiagnostics" : { + "enabled" : true, + "storageUri" : "http://{myStorageAccount}.blob.core.windows.net" + } + }, + "provisioningState" : "Succeeded" + }, + "resources" : [{ + "name" : "CustomScriptExtension-DSC", + "id" : "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC", + "type" : "Microsoft.Compute/virtualMachines/extensions", + "location" : "west us", + "tags" : { + "displayName" : "CustomScriptExtension-DSC" + }, + "properties" : { + "autoUpgradeMinorVersion" : true, + "provisioningState" : "Succeeded", + "publisher" : "Microsoft.Compute", + "type" : "CustomScriptExtension", + "typeHandlerVersion" : "1.9", + "settings" : { + } + } + }] + } + } + } +} + + + diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineInstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineInstanceView.json new file mode 100644 index 000000000000..fff895e335e0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineInstanceView.json @@ -0,0 +1,91 @@ +{ + "parameters" : { + "subscriptionId" : "{subscription-id}", + "resourceGroupName" : "myResourceGroup", + "api-version" : "2019-07-01", + "vmName" : "myVM" + }, + "responses" : { + "200" : { + "body" : { + "platformUpdateDomain" : 1, + "platformFaultDomain" : 1, + "computerName" : "myVM", + "osName" : "Windows Server 2016 Datacenter", + "osVersion" : "Microsoft Windows NT 10.0.14393.0", + "vmAgent" : { + "vmAgentVersion" : "2.7.41491.949", + "statuses" : [{ + "code" : "ProvisioningState/succeeded", + "level" : "Info", + "displayStatus" : "Ready", + "message" : "GuestAgent is running and accepting new configurations.", + "time" : "2019-10-14T23:11:22+00:00" + } + ], + "extensionHandlers" : [{ + "type" : "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion" : "1.5.5.9", + "status" : { + "code" : "ProvisioningState/succeeded", + "level" : "Info", + "displayStatus" : "Ready" + } + } + ] + }, + "disks" : [ + { + "name" : "myOsDisk", + "statuses" : [{ + "code" : "ProvisioningState/succeeded", + "level" : "Info", + "displayStatus" : "Provisioning succeeded", + "time" : "2019-10-14T21:29:47.477089+00:00" + } + ] + }, + { + "name" : "myDataDisk0", + "statuses" : [{ + "code" : "ProvisioningState/succeeded", + "level" : "Info", + "displayStatus" : "Provisioning succeeded", + "time" : "2019-10-14T21:29:47.461517+00:00" + } + ] + } + ], + "bootDiagnostics" : { + "consoleScreenshotBlobUri" : "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.screenshot.bmp", + "serialConsoleLogBlobUri" : "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.serialconsole.log" + }, + "extensions" : [{ + "name" : "IaaSAntiMalware-ext0", + "type" : "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion" : "1.5.5.9", + "statuses" : [{ + "code" : "ProvisioningState/succeeded", + "level" : "Info", + "displayStatus" : "Provisioning succeeded", + "message" : "Microsoft Antimalware enabled" + } + ] + } + ], + "hyperVGeneration" : "V1", + "statuses" : [{ + "code" : "ProvisioningState/succeeded", + "level" : "Info", + "displayStatus" : "Provisioning succeeded", + "time" : "2019-10-14T21:30:12.8051917+00:00" + }, { + "code" : "PowerState/running", + "level" : "Info", + "displayStatus" : "VM running" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..5af5fe255613 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/GetVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName":"myVMExtension", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": {"UserName":"xyz@microsoft.com"} + }, + "name": "myVMExtension", + "location": "westus", + "type":"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + } + } + } + } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailabilitySetsInASubscription.json new file mode 100644 index 000000000000..719e9496ee1e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailabilitySetsInASubscription.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "api-version": "2019-07-01", + "$expand": "virtualMachines\\$ref" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailableVmSizes_VirtualMachines.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailableVmSizes_VirtualMachines.json new file mode 100644 index 000000000000..80f61a9e8d94 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListAvailableVmSizes_VirtualMachines.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVmName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_A1_V2", + "numberOfCores": 1, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 10240, + "memoryInMB": 2048, + "maxDataDiskCount": 2 + }, + { + "name": "Standard_A2_V2", + "numberOfCores": 2, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 20480, + "memoryInMB": 4096, + "maxDataDiskCount": 4 + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInAResourceGroup.json new file mode 100644 index 000000000000..60beaa08a3b6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInAResourceGroup.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSet?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInASubscription.json new file mode 100644 index 000000000000..62655bcf80dc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListDiskEncryptionSetsInASubscription.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSet?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInAResourceGroup.json new file mode 100644 index 000000000000..1177e32ca71e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInAResourceGroup.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInASubscription.json new file mode 100644 index 000000000000..ed9d8d03c436 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListImagesInASubscription.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInAResourceGroup.json new file mode 100644 index 000000000000..84c83692e04e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInAResourceGroup.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInASubscription.json new file mode 100644 index 000000000000..49e05b8e5583 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListManagedDisksInASubscription.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInAResourceGroup.json new file mode 100644 index 000000000000..af32461360c5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInAResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInASubscription.json new file mode 100644 index 000000000000..dc6802811c0e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListProximityPlacementGroupsInASubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-07-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInAResourceGroup.json new file mode 100644 index 000000000000..843b2fe788d7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInAResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInASubscription.json new file mode 100644 index 000000000000..e833eabfade5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListSnapshotsInASubscription.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.6630569+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1", + "name": "mySnapshot1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.3247198+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2", + "name": "mySnapshot2" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..234274c9440b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": {"UserName":"xyz@microsoft.com"} + }, + "name": "myVMExtension", + "location": "westus", + "type":"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + }, + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher1", + "type": "extType1", + "typeHandlerVersion": "1.0", + "settings": {"UserName":"xyz@microsoft.com"} + }, + "name": "myVMExtension1", + "location": "westus", + "type":"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension1" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachinesInASubscriptionByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachinesInASubscriptionByLocation.json new file mode 100644 index 000000000000..c06c0d7f91d1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ListVirtualMachinesInASubscriptionByLocation.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "location": "eastus", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + }, + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsRequestRateByInterval.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsRequestRateByInterval.json new file mode 100644 index 000000000000..cfcd632dcc54 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsRequestRateByInterval.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2019-07-01", + "parameters": { + "intervalLength": "FiveMins", + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByResourceName": true + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/RequestRateByInterval_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsThrottledRequests.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsThrottledRequests.json new file mode 100644 index 000000000000..279212f47003 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/LogAnalyticsThrottledRequests.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2019-07-01", + "parameters": { + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByOperationName": true, + "groupByResourceName": false + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/ThrottledRequests_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/PatchAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/PatchAProximityPlacementGroup.json new file mode 100644 index 000000000000..68d010c06e70 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/PatchAProximityPlacementGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "tags": { + "additionalProp1": "string" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReapplyVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReapplyVirtualMachine.json new file mode 100644 index 000000000000..2f83ad0708cc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReapplyVirtualMachine.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2019-07-01", + "vmName": "VMName" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReimageVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReimageVirtualMachine.json new file mode 100644 index 000000000000..d980861f9fb8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/ReimageVirtualMachine.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "vmName": "myVMName", + "parameters": { + "tempDisk": true + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateADiskEncryptionSet.json new file mode 100644 index 000000000000..e6625fbed7ca --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateADiskEncryptionSet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json new file mode 100644 index 000000000000..22fb3b3d2ac9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json @@ -0,0 +1,208 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-07-01", + "parameters": { + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "toBeDetached": true + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "toBeDetached": false + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..913b1afdee28 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName":"myVMExtension", + "api-version": "2019-07-01", + "extensionParameters": { + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { "UserName": "xyz@microsoft.com" } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type":"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": {"UserName":"xyz@microsoft.com"} + } + } + } + } + } diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VMScaleSetExtensionRollingUpgrade.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VMScaleSetExtensionRollingUpgrade.json new file mode 100644 index 000000000000..be4329609574 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VMScaleSetExtensionRollingUpgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-07-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommand.json new file mode 100644 index 000000000000..0d23098c8d67 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "resourceGroupName": "crptestar98131", + "vmName": "vm3036", + "$top": 1, + "api-version": "2019-07-01", + "monitor": "true", + "parameters": { + "commandId": "RunPowerShellScript" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "code": "ComponentStatus/StdOut/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "This is a sample script with parameters value1 value2" + }, + { + "code": "ComponentStatus/StdErr/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandGet.json new file mode 100644 index 000000000000..1ce41b24b9aa --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "location": "SoutheastAsia", + "commandId": "RunPowerShellScript", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "script": [ + "param(", + " [string]$arg1,", + " [string]$arg2", + ")", + "Write-Host This is a sample script with parameters $arg1 $arg2" + ], + "parameters": [ + { + "name": "arg1", + "type": "string", + "defaultValue": "value1" + }, + { + "name": "arg2", + "type": "string", + "defaultValue": "value2" + } + ], + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandList.json new file mode 100644 index 000000000000..db5580fda698 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/VirtualMachineRunCommandList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "SoutheastAsia", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableRemotePS", + "osType": "Windows", + "label": "Enable remote PowerShell", + "description": "Configure the machine to enable remote PowerShell." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "IPConfig", + "osType": "Windows", + "label": "List IP configuration", + "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunShellScript", + "osType": "Linux", + "label": "Executes a Linux shell script", + "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ifconfig", + "osType": "Linux", + "label": "List network configuration", + "description": "Get the configuration of all network interfaces." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableAdminAccount", + "osType": "Windows", + "label": "Enable administrator account", + "description": "Checks if the local Administrator account is disabled, and if so enables it." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetAccountPassword", + "osType": "Windows", + "label": "Reset built-in Administrator account password", + "description": "Reset built-in Administrator account password." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RDPSettings", + "osType": "Windows", + "label": "Verify RDP Listener Settings", + "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "SetRDPPort", + "osType": "Windows", + "label": "Set Remote Desktop port", + "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetRDPCert", + "osType": "Windows", + "label": "Restore RDP Authentication mode to defaults", + "description": "Removes the SSL certificate tied to the RDP listener and restores the RDP listerner security to default. Use this script if you see any issues with the certificate." + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json index 9af963b8fced..7b0e7cfe4b8d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json @@ -2065,7 +2065,7 @@ "$ref": "#/definitions/ApiError" } }, - "description": "An error response from the Gallery service." + "description": "An error response from the Compute service." }, "ApiError": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/runCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/runCommands.json new file mode 100644 index 000000000000..c208cfa0a01e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/runCommands.json @@ -0,0 +1,467 @@ +{ + "swagger": "2.0", + "info": { + "title": "RunCommandsClient", + "description": "The Run Commands Client.", + "version": "2019-07-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/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.Compute/locations/{location}/runCommands": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_List", + "x-ms-examples": { + "VirtualMachineRunCommandList": { + "$ref": "./examples/VirtualMachineRunCommandList.json" + } + }, + "description": "Lists all available run commands for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_Get", + "x-ms-examples": { + "VirtualMachineRunCommandGet": { + "$ref": "./examples/VirtualMachineRunCommandGet.json" + } + }, + "description": "Gets specific run command for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "commandId", + "in": "path", + "required": true, + "type": "string", + "description": "The command id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandDocument" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommand": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_RunCommand", + "x-ms-examples": { + "VirtualMachineRunCommand": { + "$ref": "./examples/VirtualMachineRunCommand.json" + } + }, + "description": "Run command on the VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_RunCommand", + "description": "Run command on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "RunCommandInputParameter": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "value": { + "type": "string", + "description": "The run command parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandInput": { + "properties": { + "commandId": { + "type": "string", + "description": "The run command id." + }, + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The script to be executed. When this value is given, the given script will override the default script of the command." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandInputParameter" + }, + "description": "The run command parameters." + } + }, + "required": [ + "commandId" + ], + "description": "Capture Virtual Machine parameters." + }, + "RunCommandParameterDefinition": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "type": { + "type": "string", + "description": "The run command parameter type." + }, + "defaultValue": { + "type": "string", + "description": "The run command parameter default value." + }, + "required": { + "type": "boolean", + "description": "The run command parameter required.", + "default": false + } + }, + "required": [ + "name", + "type" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandDocumentBase": { + "properties": { + "$schema": { + "type": "string", + "description": "The VM run command schema." + }, + "id": { + "type": "string", + "description": "The VM run command id." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "label": { + "type": "string", + "description": "The VM run command label." + }, + "description": { + "type": "string", + "description": "The VM run command description." + } + }, + "required": [ + "$schema", + "id", + "osType", + "label", + "description" + ], + "description": "Describes the properties of a Run Command metadata." + }, + "RunCommandDocument": { + "allOf": [ + { + "$ref": "#/definitions/RunCommandDocumentBase" + } + ], + "properties": { + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The script to be executed." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandParameterDefinition" + }, + "description": "The parameters used by the script." + } + }, + "required": [ + "script" + ], + "description": "Describes the properties of a Run Command." + }, + "RunCommandListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandDocumentBase" + }, + "description": "The list of virtual machine run commands." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of run commands. Call ListNext() with this to fetch the next page of run commands." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "RunCommandResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "Run command operation response." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 2d93aff01922..c7976bba0417 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the Compute API. title: ComputeManagementClient description: Compute Client openapi-type: arm -tag: package-2019-07-01 +tag: package-2019-07 directive: - where: @@ -134,6 +134,10 @@ directive: - $.definitions.DedicatedHostUpdate suppress: - RequiredPropertiesMissingInResourceModel + - where: + - $.definitions.DiskEncryptionSetParameters + suppress: + - RequiredPropertiesMissingInResourceModel - where: - $.definitions.VirtualMachineScaleSetVM @@ -155,10 +159,6 @@ directive: - $.definitions.VirtualMachineImage suppress: - TrackedResourcePatchOperation - - where: - - $.definitions.VirtualMachineImageResource - suppress: - - TrackedResourceGetOperation - where: - $.definitions.Gallery suppress: @@ -172,13 +172,15 @@ directive: suppress: - TrackedResourcePatchOperation + - where: + - $.definitions.VirtualMachineImageResource + suppress: + - TrackedResourceGetOperation - where: - $.definitions.AdditionalCapabilities.properties.ultraSSDEnabled suppress: - DefinitionsPropertiesNamesCamelCase - - - where: - $.definitions.DiskProperties.properties.diskIOPSReadWrite suppress: @@ -187,6 +189,14 @@ directive: - $.definitions.DiskUpdateProperties.properties.diskIOPSReadWrite suppress: - DefinitionsPropertiesNamesCamelCase + - where: + - $.definitions.DataDisk.properties.diskIOPSReadWrite + suppress: + - DefinitionsPropertiesNamesCamelCase + - where: + - $.definitions.VirtualMachineScaleSetDataDisk.properties.diskIOPSReadWrite + suppress: + - DefinitionsPropertiesNamesCamelCase - where: - $.definitions.ContainerService @@ -196,6 +206,20 @@ directive: - ACS service is deprecated so a PATCH endpoint won't be implemented ``` +### Tag: package-2019-07 + +These settings apply only when `--tag=package-2019-07` is specified on the command line. + +``` yaml $(tag) == 'package-2019-07' +input-file: +- Microsoft.Compute/stable/2019-07-01/compute.json +- Microsoft.Compute/stable/2019-07-01/runCommands.json +- Microsoft.Compute/stable/2019-04-01/skus.json +- Microsoft.Compute/stable/2019-07-01/disk.json +- Microsoft.Compute/stable/2019-07-01/gallery.json +- Microsoft.ContainerService/stable/2017-01-31/containerService.json +``` + ### Tag: package-2019-07-01 These settings apply only when `--tag=package-2019-07-01` is specified on the command line. @@ -205,7 +229,7 @@ input-file: - Microsoft.Compute/stable/2019-03-01/compute.json - Microsoft.Compute/stable/2019-03-01/runCommands.json - Microsoft.Compute/stable/2019-04-01/skus.json -- Microsoft.Compute/stable/2019-03-01/disk.json +- Microsoft.Compute/stable/2019-07-01/disk.json - Microsoft.Compute/stable/2019-07-01/gallery.json - Microsoft.ContainerService/stable/2017-01-31/containerService.json ``` From 0bea032eb3271653c3eef6ed6cec383e89ba63a8 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Sun, 20 Oct 2019 23:56:58 +0000 Subject: [PATCH 27/54] regenerated all-api-versions --- specification/compute/resource-manager/readme.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index c7976bba0417..014b11c56231 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -714,12 +714,15 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/runCommands.json + - $(this-folder)/Microsoft.Compute/stable/2019-07-01/compute.json + - $(this-folder)/Microsoft.Compute/stable/2019-07-01/runCommands.json - $(this-folder)/Microsoft.Compute/stable/2019-04-01/skus.json - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/disk.json + - $(this-folder)/Microsoft.Compute/stable/2019-07-01/disk.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/gallery.json - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.json + - $(this-folder)/Microsoft.Compute/stable/2019-03-01/compute.json + - $(this-folder)/Microsoft.Compute/stable/2019-03-01/runCommands.json + - $(this-folder)/Microsoft.Compute/stable/2019-03-01/disk.json - $(this-folder)/Microsoft.Compute/stable/2019-03-01/gallery.json - $(this-folder)/Microsoft.Compute/stable/2018-10-01/compute.json - $(this-folder)/Microsoft.Compute/stable/2018-10-01/runCommands.json From 4d8c0afb14b65ff9a4eeb1ab56222b44b79d009b Mon Sep 17 00:00:00 2001 From: Anirban Sarkar <33848291+asarkar84@users.noreply.github.com> Date: Sun, 20 Oct 2019 18:00:38 -0700 Subject: [PATCH 28/54] Correcting the verbs from Create BillingProfile and InvoiceSection as per code implementation (#7524) * Billing RP spec changes for listInvoiceSectionsWithCreateSubscriptionPermission API * Updated the operation id * Added x-ms-pageable * Added next link * Deleted unused file ProductCancelByBillingAccount * Incorporated review comments Incorporated review comments * Added new properties in Invoicing APIs Added new properties in Invoicing APIs * Incorporated review comments Incorporated review comments * Added invoiceEmailOptIn in the UpdateBillingProfile request Added invoiceEmailOptIn in the UpdateBillingProfile request * Update billing.json * Updating the verbs from Create BillingProfile and InvoiceSection entities Updating the verbs from Create BillingProfile and InvoiceSection entities --- .../Microsoft.Billing/preview/2019-10-01-preview/billing.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json index 69f44eb936eb..50946f431cad 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json @@ -461,7 +461,7 @@ } } }, - "put": { + "post": { "tags": [ "BillingProfiles" ], @@ -718,7 +718,7 @@ } } }, - "put": { + "post": { "tags": [ "InvoiceSections" ], From b2d6bdb19cb22e051f03e188c3b71b14dde884a1 Mon Sep 17 00:00:00 2001 From: Sornakumar Date: Sun, 20 Oct 2019 18:34:56 -0700 Subject: [PATCH 29/54] Updating swagger spec to fix billing plans schema in catalogs response. (#7541) --- .../2019-04-01/examples/GetCatalog.json | 26 ++++++++----------- .../preview/2019-04-01/reservations.json | 21 +++++---------- 2 files changed, 17 insertions(+), 30 deletions(-) diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetCatalog.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetCatalog.json index 8676291c7d5e..eef9cedf9faf 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetCatalog.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetCatalog.json @@ -15,20 +15,16 @@ "P1Y", "P3Y" ], - "billingPlans": [ - { - "P1Y": [ - "Upfront", - "Monthly" - ] - }, - { - "P3Y": [ - "Upfront", - "Monthly" - ] - } - ], + "billingPlans": { + "P1Y": [ + "Upfront", + "Monthly" + ], + "P3Y": [ + "Upfront", + "Monthly" + ] + }, "locations": [ "eastus" ], @@ -178,4 +174,4 @@ ] } } -} +} \ No newline at end of file diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json index cb97e39ac050..a85dbf13e255 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json @@ -737,21 +737,12 @@ "readOnly": true }, "billingPlans": { - "type": "array", + "type": "object", "description": "The billing plan options available for this SKU.", - "items": { - "type": "object", - "properties": { - "name": { - "$ref": "#/definitions/ReservationTerm", - "description": "The term for the billing SKU is available for." - } - }, - "additionalProperties": { - "type": "array", - "items": { - "$ref": "#/definitions/ReservationBillingPlan" - } + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/ReservationBillingPlan" } } }, @@ -1747,4 +1738,4 @@ "description": "Order Id of the reservation" } } -} +} \ No newline at end of file From 796f8ca8f9760cbd32cd3117496d6d53d9858608 Mon Sep 17 00:00:00 2001 From: Rohit Mahamuni <44378577+romahamu@users.noreply.github.com> Date: Sun, 20 Oct 2019 21:50:42 -0400 Subject: [PATCH 30/54] Microsoft Azure StorageCache new API version (#7520) * Update autorest config and swagger to support new API version 2019-11-01. * Re-write description of some of the responses in Cache_Create.json and storagecache.json. * Description updates. Ready for re-review. * Remove references to PATCH storagetarget * Update C/ST_Create to C/ST_CreateOrUpdate * Fix formatting. * Fix tag name to align with previous version tags and GO SDK namespace. --- .../examples/Caches_CreateOrUpdate.json | 91 + .../2019-11-01/examples/Caches_Delete.json | 19 + .../2019-11-01/examples/Caches_Flush.json | 16 + .../2019-11-01/examples/Caches_Get.json | 44 + .../2019-11-01/examples/Caches_List.json | 78 + .../examples/Caches_ListByResourceGroup.json | 79 + .../2019-11-01/examples/Caches_Start.json | 16 + .../2019-11-01/examples/Caches_Stop.json | 16 + .../2019-11-01/examples/Caches_Update.json | 57 + .../examples/Caches_UpgradeFirmware.json | 16 + .../2019-11-01/examples/Operations_List.json | 35 + .../stable/2019-11-01/examples/Skus_List.json | 86 + .../StorageTargets_CreateOrUpdate.json | 84 + .../examples/StorageTargets_Delete.json | 20 + .../examples/StorageTargets_Get.json | 37 + .../examples/StorageTargets_ListByCache.json | 78 + .../2019-11-01/examples/UsageModels_List.json | 35 + .../stable/2019-11-01/storagecache.json | 1592 +++++++++++++++++ .../resource-manager/readme.csharp.md | 4 +- .../resource-manager/readme.go.md | 19 +- .../resource-manager/readme.java.md | 21 + .../storagecache/resource-manager/readme.md | 14 +- .../resource-manager/readme.ruby.md | 18 + 23 files changed, 2471 insertions(+), 4 deletions(-) create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_CreateOrUpdate.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Delete.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Flush.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Get.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_ListByResourceGroup.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Start.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Stop.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Update.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_UpgradeFirmware.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Operations_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Skus_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_CreateOrUpdate.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Delete.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Get.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_ListByCache.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/UsageModels_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/storagecache.json diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_CreateOrUpdate.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_CreateOrUpdate.json new file mode 100644 index 000000000000..6812f50e6099 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_CreateOrUpdate.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01", + "cache": { + "tags": { + "Dept": "Initech" + }, + "location": "westus", + "properties": { + "cacheSizeGB": 3072, + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "responses": { + "201": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "5.3.23", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "5.3.24" + } + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Delete.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Delete.json new file mode 100644 index 000000000000..b65bea0defb3 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Flush.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Flush.json new file mode 100644 index 000000000000..2e8aa3d9dd6c --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Flush.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Get.json new file mode 100644 index 000000000000..02212481047d --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_List.json new file mode 100644 index 000000000000..efb48385e3ba --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_List.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + }, + { + "tags": { + "Dept": "Intertrode" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc2", + "location": "westus", + "name": "sc2", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Configuring", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_ListByResourceGroup.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_ListByResourceGroup.json new file mode 100644 index 000000000000..3804ec3e7fe9 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_ListByResourceGroup.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + }, + { + "tags": { + "Dept": "Intertrode" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc2", + "location": "westus", + "name": "sc2", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Start.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Start.json new file mode 100644 index 000000000000..2e8aa3d9dd6c --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Start.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Stop.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Stop.json new file mode 100644 index 000000000000..2e8aa3d9dd6c --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Stop.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Update.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Update.json new file mode 100644 index 000000000000..06b50b9286a0 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_Update.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01", + "cache": { + "tags": { + "Dept": "Initech" + }, + "location": "westus", + "properties": { + "cacheSizeGB": 3072, + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_UpgradeFirmware.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_UpgradeFirmware.json new file mode 100644 index 000000000000..0845633156e3 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Caches_UpgradeFirmware.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "201": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Operations_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Operations_List.json new file mode 100644 index 000000000000..f84333b394e5 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Operations_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "x-ms-client-request-id": [ + "7e655b68-e491-4cb6-90c3-6a5b10b7bd17" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.StorageCache/caches/write", + "display": { + "operation": "Create or Update Cache", + "provider": "Azure Storage Cache", + "resource": "Caches" + } + }, + { + "name": "Microsoft.StorageCache/caches/delete", + "display": { + "operation": "Delete Cache", + "provider": "Azure Storage Cache", + "resource": "Caches" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Skus_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Skus_List.json new file mode 100644 index 000000000000..2b3995bd37ff --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/Skus_List.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "caches", + "name": "Standard_2G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "2" + }, + { + "name": "cache sizes(GB)", + "value": "3072,6144,12288" + } + ], + "restrictions": [] + }, + { + "resourceType": "caches", + "name": "Standard_4G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "4" + }, + { + "name": "cache sizes(GB)", + "value": "6144,12288,24576" + } + ], + "restrictions": [] + }, + { + "resourceType": "caches", + "name": "Standard_8G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "8" + }, + { + "name": "cache sizes(GB)", + "value": "12288,24576,49152" + } + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_CreateOrUpdate.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_CreateOrUpdate.json new file mode 100644 index 000000000000..52cf6a67b059 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_CreateOrUpdate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01", + "cacheName": "sc1", + "storageTargetName": "st1", + "storagetarget": { + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + }, + "201": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Delete.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Delete.json new file mode 100644 index 000000000000..00ef5d2bb6b1 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01", + "cacheName": "sc1", + "storageTargetName": "st1" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Get.json new file mode 100644 index 000000000000..ef8a6dc6e519 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_Get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01", + "cacheName": "sc1", + "storageTargetName": "st1" + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_ListByCache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_ListByCache.json new file mode 100644 index 000000000000..51b7244b1efa --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/StorageTargets_ListByCache.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01", + "cacheName": "sc1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + }, + { + "name": "st2", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st2", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/some/crazy/place/on/cache", + "targetPath": "/" + } + ], + "targetType": "clfs", + "clfs": { + "target": "https://atj5c2fc9b8c00.blob.core.windows.net/atj5c2fc9b8c01" + } + } + }, + { + "name": "st3", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st3", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/some/crazier/place/on/cache", + "targetPath": "/", + "nfsExport": "" + } + ], + "targetType": "unknown", + "unknown": { + "unknownMap": { + "foo": "bar", + "foo2": "test" + } + } + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/UsageModels_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/UsageModels_List.json new file mode 100644 index 000000000000..71fecf3621e6 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/examples/UsageModels_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "modelName": "READ_HEAVY_INFREQ", + "targetType": "nfs3", + "display": { + "description": "Read heavy, infrequent changes" + } + }, + { + "modelName": "WRITE_AROUND", + "targetType": "nfs3", + "display": { + "description": "Clients write directly to storage" + } + }, + { + "modelName": "WRITE_WORKLOAD_15", + "targetType": "nfs3", + "display": { + "description": "Write workload > 15%" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/storagecache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/storagecache.json new file mode 100644 index 000000000000..a9ba627bbd52 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2019-11-01/storagecache.json @@ -0,0 +1,1592 @@ +{ + "swagger": "2.0", + "info": { + "description": "A Storage Cache provides scalable caching service for NAS clients, serving data from either NFSv3 or Blob at-rest storage (referred to as \"Storage Targets\"). These operations allow you to manage Caches.", + "title": "Storage Cache Mgmt Client", + "version": "2019-11-01" + }, + "host": "management.azure.com", + "basePath": "/", + "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.StorageCache/operations": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of available Resource Provider operations.", + "schema": { + "$ref": "#/definitions/ApiOperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "tags": [ + "Operations" + ], + "description": "Lists all of the available Resource Provider operations.", + "x-ms-examples": { + "StorageTargets_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "operationId": "Operations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/skus": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of SKU descriptors.", + "schema": { + "$ref": "#/definitions/ResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Skus_List": { + "$ref": "./examples/Skus_List.json" + } + }, + "tags": [ + "SKUs" + ], + "description": "Get the list of StorageCache.Cache SKUs available to this subscription.", + "operationId": "Skus_List" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/usageModels": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of UsageModel descriptors.", + "schema": { + "$ref": "#/definitions/UsageModelsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "UsageModels_List": { + "$ref": "./examples/UsageModels_List.json" + } + }, + "tags": [ + "UsageModels" + ], + "description": "Get the list of Cache Usage Models available to this subscription.", + "operationId": "UsageModels_List" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/caches": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of Cache objects. Note that entity references might replace complete Cache objects, as described in http://docs.oasis-open.org/odata/odata-json-format/v4.01/cs01/odata-json-format-v4.01-cs01.html#sec_EntityReference", + "schema": { + "$ref": "#/definitions/CachesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Caches_List": { + "$ref": "./examples/Caches_List.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Returns all Caches the user has access to under a subscription.", + "operationId": "Caches_List" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of Cache objects. Note that entity references might replace complete Cache objects, as described in http://docs.oasis-open.org/odata/odata-json-format/v4.01/cs01/odata-json-format-v4.01-cs01.html#sec_EntityReference", + "schema": { + "$ref": "#/definitions/CachesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_ListByResourceGroup": { + "$ref": "./examples/Caches_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Caches" + ], + "description": "Returns all Caches the user has access to under a resource group.", + "operationId": "Caches_ListByResourceGroup" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}": { + "delete": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Cache deleted.", + "schema": {} + }, + "202": { + "description": "Started the Cache's transition to Deleted state. Poll the Cache to monitor.", + "schema": {} + }, + "204": { + "description": "Cache deleted.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Delete": { + "$ref": "./examples/Caches_Delete.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Schedules a Cache for deletion.", + "operationId": "Caches_Delete" + }, + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns the Cache object corresponding to cacheName.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Get": { + "$ref": "./examples/Caches_Get.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Returns a Cache.", + "operationId": "Caches_Get" + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the user-selectable properties of the new Cache. If read-only properties are included, they must match the existing values of those properties.", + "in": "body", + "name": "cache", + "schema": { + "$ref": "#/definitions/Cache" + } + } + ], + "responses": { + "200": { + "description": "Cache created or updated.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "201": { + "description": "Cache creation or update has been initiated. Poll the new Cache's provisioningState property to monitor creation progress.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_CreateOrUpdate": { + "$ref": "./examples/Caches_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Create or update a Cache.", + "operationId": "Caches_CreateOrUpdate" + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the user-selectable properties of the Cache. If read-only properties are included, they must match the existing values of those properties.", + "in": "body", + "name": "cache", + "schema": { + "$ref": "#/definitions/Cache" + } + } + ], + "responses": { + "200": { + "description": "Updated the Cache.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Update": { + "$ref": "./examples/Caches_Update.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Update a Cache instance.", + "operationId": "Caches_Update" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/flush": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "All cached data has been flushed to the Storage Target(s).", + "schema": {} + }, + "202": { + "description": "Cache has started flushing to its Storage Target(s). Poll the Cache's state field to monitor.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Flush": { + "$ref": "./examples/Caches_Flush.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells a Cache to write all dirty data to the Storage Target(s). During the flush, clients will see errors returned until the flush is complete.", + "operationId": "Caches_Flush" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/start": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Cache is Active.", + "schema": {} + }, + "202": { + "description": "Cache has started the transition to Active. Poll the Cache's state field to monitor.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Start": { + "$ref": "./examples/Caches_Start.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells a Stopped state Cache to transition to Active state.", + "operationId": "Caches_Start" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/stop": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Cache is stopped.", + "schema": {} + }, + "202": { + "description": "Cache has started the transition to Stopped. Poll the Cache's state field to monitor.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Stop": { + "$ref": "./examples/Caches_Stop.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells an Active Cache to transition to Stopped state.", + "operationId": "Caches_Stop" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/storageTargets": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the list of Storage Targets defined by cacheName.", + "schema": { + "$ref": "#/definitions/StorageTargetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_List": { + "$ref": "./examples/StorageTargets_ListByCache.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "StorageTargets" + ], + "description": "Returns a list of Storage Targets for the specified Cache.", + "operationId": "StorageTargets_ListByCache" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/storageTargets/{storageTargetName}": { + "delete": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of Storage Target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Storage target deleted.", + "schema": {} + }, + "202": { + "description": "Started the Storage Target's deletion. Poll the Cache's Storage Targets to monitor.", + "schema": {} + }, + "204": { + "description": "Storage Target deleted.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Delete": { + "$ref": "./examples/StorageTargets_Delete.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "StorageTargets" + ], + "description": "Removes a Storage Target from a Cache. This operation is allowed at any time, but if the Cache is down or unhealthy, the actual removal of the Storage Target may be delayed until the Cache is healthy again. Note that if the Cache has data to flush to the Storage Target, the data will be flushed before the Storage Target will be deleted.", + "operationId": "StorageTargets_Delete" + }, + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of the Storage Target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the Storage Target object corresponding to storageTargetName.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Get": { + "$ref": "./examples/StorageTargets_Get.json" + } + }, + "tags": [ + "StorageTargets" + ], + "description": "Returns a Storage Target from a Cache.", + "operationId": "StorageTargets_Get" + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of the Storage Target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the definition of a Storage Target.", + "in": "body", + "name": "storagetarget", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + } + ], + "responses": { + "200": { + "description": "Storage Target has been created or updated.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "201": { + "description": "Storage Target creation or update has been initiated. Poll the new Storage Target's provisioningState property to monitor creation progress.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_CreateOrUpdate": { + "$ref": "./examples/StorageTargets_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "StorageTargets" + ], + "description": "Create or update a Storage Target. This operation is allowed at any time, but if the Cache is down or unhealthy, the actual creation/modification of the Storage Target may be delayed until the Cache is healthy again.", + "operationId": "StorageTargets_CreateOrUpdate" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/upgrade": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Cache firmware is up to date.", + "schema": {} + }, + "202": { + "description": "Cache has started the upgrade. Poll the Cache's state field to monitor.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_UpgradeFirmware": { + "$ref": "./examples/Caches_UpgradeFirmware.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Upgrade a Cache's firmware if a new version is available. Otherwise, this operation has no effect.", + "operationId": "Caches_UpgradeFirmware" + } + } + }, + "definitions": { + "ApiOperation": { + "description": "REST API operation description: see https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md#r3023-operationsapiimplementation", + "properties": { + "display": { + "description": "The object that represents the operation.", + "properties": { + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "provider": { + "description": "Service provider: Microsoft.StorageCache", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Cache, etc.", + "type": "string" + } + } + }, + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + } + }, + "type": "object" + }, + "ApiOperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string" + }, + "value": { + "description": "List of Resource Provider operations supported by the Microsoft.StorageCache resource provider.", + "items": { + "$ref": "#/definitions/ApiOperation" + }, + "type": "array" + } + }, + "type": "object" + }, + "CloudError": { + "description": "An error response.", + "properties": { + "error": { + "description": "The body of the error.", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object" + }, + "CloudErrorBody": { + "description": "An error response.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "type": "array" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "target": { + "description": "The target of the particular error. For example, the name of the property in error.", + "type": "string" + } + }, + "type": "object" + }, + "Cache": { + "description": "A Cache instance. Follows Azure Resource Manager standards: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md", + "properties": { + "tags": { + "description": "ARM tags as name/value pairs.", + "type": "object" + }, + "id": { + "description": "Resource ID of the Cache.", + "readOnly": true, + "$ref": "#/definitions/URLString" + }, + "location": { + "description": "Region name string.", + "type": "string" + }, + "name": { + "description": "Name of Cache.", + "readOnly": true, + "$ref": "#/definitions/ResourceName" + }, + "type": { + "description": "Type of the Cache; Microsoft.StorageCache/Cache", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the Cache.", + "properties": { + "cacheSizeGB": { + "description": "The size of this Cache, in GB.", + "type": "integer" + }, + "health": { + "description": "Health of the Cache.", + "readOnly": true, + "$ref": "#/definitions/CacheHealth" + }, + "mountAddresses": { + "description": "Array of IP addresses that can be used by clients mounting this Cache.", + "readOnly": true, + "items": { + "type": "string" + }, + "type": "array" + }, + "provisioningState": { + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningStateType", + "modelAsString": true + }, + "type": "string" + }, + "subnet": { + "description": "Subnet used for the Cache.", + "$ref": "#/definitions/URLString" + }, + "upgradeStatus": { + "description": "Upgrade status of the Cache.", + "$ref": "#/definitions/CacheUpgradeStatus" + } + }, + "type": "object" + }, + "sku": { + "description": "SKU for the Cache.", + "properties": { + "name": { + "description": "SKU name for this Cache.", + "type": "string" + } + }, + "type": "object" + } + }, + "x-ms-azure-resource": true, + "type": "object" + }, + "CachesListResult": { + "description": "Result of the request to list Caches. It contains a list of Caches and a URL link to get the next set of results.", + "properties": { + "nextLink": { + "description": "URL to get the next set of Cache list results, if there are any.", + "type": "string" + }, + "value": { + "description": "List of Caches.", + "items": { + "$ref": "#/definitions/Cache" + }, + "type": "array" + } + }, + "type": "object" + }, + "CacheHealth": { + "description": "An indication of Cache health. Gives more information about health than just that related to provisioning.", + "properties": { + "state": { + "description": "List of Cache health states.", + "enum": [ + "Unknown", + "Healthy", + "Degraded", + "Down", + "Transitioning", + "Stopping", + "Stopped", + "Upgrading", + "Flushing" + ], + "x-ms-enum": { + "name": "HealthStateType", + "modelAsString": true + }, + "type": "string" + }, + "statusDescription": { + "description": "Describes explanation of state.", + "type": "string" + } + } + }, + "CacheUpgradeStatus": { + "description": "Properties describing the software upgrade state of the Cache.", + "properties": { + "currentFirmwareVersion": { + "description": "Version string of the firmware currently installed on this Cache.", + "type": "string", + "readOnly": true + }, + "firmwareUpdateStatus": { + "description": "True if there is a firmware update ready to install on this Cache. The firmware will automatically be installed after firmwareUpdateDeadline if not triggered earlier via the upgrade operation.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "FirmwareStatusType", + "modelAsString": true + }, + "readOnly": true, + "type": "string" + }, + "firmwareUpdateDeadline": { + "description": "Time at which the pending firmware update will automatically be installed on the Cache.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastFirmwareUpdate": { + "description": "Time of the last successful firmware update.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "pendingFirmwareVersion": { + "description": "When firmwareUpdateAvailable is true, this field holds the version string for the update.", + "type": "string", + "readOnly": true + } + }, + "type": "object" + }, + "UnknownProperties": { + "description": "Properties of an unknown type of Storage Target.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "Nfs3Target": { + "description": "An NFSv3 mount point for use as a Storage Target.", + "properties": { + "target": { + "description": "IP address or host name of an NFSv3 host (e.g., 10.0.44.44).", + "pattern": "^[-.0-9a-zA-Z]+$", + "type": "string" + }, + "usageModel": { + "description": "Identifies the primary usage model to be used for this Storage Target. Get choices from .../usageModels", + "type": "string" + } + }, + "x-ms-discriminator-value": "nfs3", + "type": "object" + }, + "ClfsTarget": { + "description": "Storage container for use as a CLFS Storage Target.", + "properties": { + "target": { + "description": "Resource ID of storage container.", + "$ref": "#/definitions/URLString" + } + }, + "x-ms-discriminator-value": "clfs", + "type": "object" + }, + "UnknownTarget": { + "description": "Storage container for use as an Unknown Storage Target.", + "properties": { + "unknownMap": { + "description": "Dictionary of string->string pairs containing information about the Storage Target.", + "$ref": "#/definitions/UnknownProperties" + } + }, + "x-ms-discriminator-value": "unknown", + "type": "object" + }, + "ResourceName": { + "description": "Schema for the name of resources served by this provider. Note that objects will contain an odata @id annotation as appropriate. This will contain the complete URL of the object. These names are case-preserving, but not case sensitive.", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "type": "string" + }, + "ResourceSku": { + "description": "A resource SKU.", + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "capabilities": { + "description": "A list of capabilities of this SKU, such as throughput or ops/sec.", + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + }, + "type": "array" + }, + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g., West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "description": "The set of locations that the SKU is available.", + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "type": "array" + }, + "name": { + "description": "The name of this SKU.", + "type": "string" + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions preventing this SKU from being used. This is empty if there are no restrictions." + } + }, + "type": "object" + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. In this version, the only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location, then this would be the different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction. As of now this can be \"QuotaId\" or \"NotAvailableForSubscription\". \"QuotaId\" is set when the SKU has requiredQuotas parameter as the subscription does not belong to that quota. \"NotAvailableForSubscription\" is related to capacity at the datacenter." + } + }, + "description": "The restrictions preventing this SKU from being used." + }, + "ResourceSkuCapabilities": { + "description": "A resource SKU capability.", + "properties": { + "name": { + "description": "Name of a capability, such as ops/sec.", + "type": "string" + }, + "value": { + "description": "Quantity, if the capability is measured by quantity.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceSkuLocationInfo": { + "description": "Resource SKU location information.", + "properties": { + "location": { + "description": "Location where this SKU is available.", + "type": "string" + }, + "zones": { + "description": "Zones if any.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, + "ResourceSkusResult": { + "description": "The response from the List Cache SKUs operation.", + "properties": { + "nextLink": { + "description": "The URI to fetch the next page of Cache SKUs.", + "type": "string" + }, + "value": { + "description": "The list of SKUs available for the subscription.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSku" + }, + "type": "array" + } + } + }, + "StorageTarget": { + "description": "A storage system being cached by a Cache.", + "type": "object", + "discriminator": "targetType", + "properties": { + "name": { + "description": "Name of the Storage Target.", + "readOnly": true, + "$ref": "#/definitions/ResourceName" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID of the Storage Target." + }, + "type": { + "description": "Type of the Storage Target; Microsoft.StorageCache/Cache/StorageTarget", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the Storage Target.", + "type": "object", + "properties": { + "junctions": { + "description": "List of Cache namespace junctions to target for namespace associations.", + "type": "array", + "items": { + "$ref": "#/definitions/NamespaceJunction" + } + }, + "targetType": { + "description": "Type of the Storage Target.", + "enum": [ + "nfs3", + "clfs", + "unknown" + ], + "x-ms-enum": { + "name": "StorageTargetType", + "modelAsString": true + }, + "type": "string" + }, + "provisioningState": { + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningStateType", + "modelAsString": true + }, + "type": "string" + }, + "nfs3": { + "description": "Properties when targetType is nfs3.", + "$ref": "#/definitions/Nfs3Target" + }, + "clfs": { + "description": "Properties when targetType is clfs.", + "$ref": "#/definitions/ClfsTarget" + }, + "unknown": { + "description": "Properties when targetType is unknown.", + "$ref": "#/definitions/UnknownTarget" + } + } + } + }, + "x-ms-azure-resource": true + }, + "NamespaceJunction": { + "description": "A namespace junction.", + "type": "object", + "properties": { + "namespacePath": { + "description": "Namespace path on a Cache for a Storage Target.", + "type": "string" + }, + "targetPath": { + "description": "Path in Storage Target to which namespacePath points.", + "type": "string" + }, + "nfsExport": { + "description": "NFS export where targetPath exists.", + "type": "string" + } + } + }, + "StorageTargetsResult": { + "description": "A list of Storage Targets.", + "properties": { + "nextLink": { + "description": "The URI to fetch the next page of Storage Targets.", + "type": "string" + }, + "value": { + "description": "The list of Storage Targets defined for the Cache.", + "items": { + "$ref": "#/definitions/StorageTarget" + }, + "type": "array" + } + }, + "type": "object" + }, + "URLString": { + "description": "A fully qualified URL.", + "type": "string" + }, + "UsageModel": { + "description": "A usage model.", + "properties": { + "display": { + "description": "Localized information describing this usage model.", + "type": "object", + "properties": { + "description": { + "description": "String to display for this usage model.", + "type": "string" + } + } + }, + "modelName": { + "description": "Non-localized keyword name for this usage model.", + "type": "string" + }, + "targetType": { + "description": "The type of Storage Target to which this model is applicable (only nfs3 as of this version).", + "type": "string" + } + }, + "type": "object" + }, + "UsageModelsResult": { + "description": "A list of Cache usage models.", + "properties": { + "nextLink": { + "description": "The URI to fetch the next page of Cache usage models.", + "type": "string" + }, + "value": { + "description": "The list of usage models available for the subscription.", + "items": { + "$ref": "#/definitions/UsageModel" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/storagecache/resource-manager/readme.csharp.md b/specification/storagecache/resource-manager/readme.csharp.md index 8dc92be5e60c..af7c03ca2cd2 100644 --- a/specification/storagecache/resource-manager/readme.csharp.md +++ b/specification/storagecache/resource-manager/readme.csharp.md @@ -8,6 +8,6 @@ csharp: payload-flattening-threshold: 1 clear-output-folder: true client-side-validation: false - namespace: Microsoft.Azure.Management.Storagecache - output-folder: $(csharp-sdks-folder)/storagecache/Microsoft.Azure.Management.Storagecache/src/Generated + namespace: Microsoft.Azure.Management.StorageCache + output-folder: $(csharp-sdks-folder)/storagecache/Microsoft.Azure.Management.StorageCache/src/Generated ``` diff --git a/specification/storagecache/resource-manager/readme.go.md b/specification/storagecache/resource-manager/readme.go.md index 11a3e71f4cf8..87b00ff4bf30 100644 --- a/specification/storagecache/resource-manager/readme.go.md +++ b/specification/storagecache/resource-manager/readme.go.md @@ -2,13 +2,30 @@ These settings apply only when `--go` is specified on the command line. -```yaml $(go) +``` yaml $(go) go: license-header: MICROSOFT_APACHE_NO_VERSION namespace: storagecache clear-output-folder: true ``` +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-11-01 + - tag: package-2019-08 +``` + +### Tag: package-2019-11-01 and go + +These settings apply only when `--tag=package-2019-11-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-11-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-11-01/$(namespace) +``` + ### Tag: package-2019-08 and go These settings apply only when `--tag=package-2019-08 --go` is specified on the command line. diff --git a/specification/storagecache/resource-manager/readme.java.md b/specification/storagecache/resource-manager/readme.java.md index db7ff2df6f12..731ca002c238 100644 --- a/specification/storagecache/resource-manager/readme.java.md +++ b/specification/storagecache/resource-manager/readme.java.md @@ -12,6 +12,27 @@ payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-storagecache ``` +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-11-01 + - tag: package-2019-08 +``` + +### Tag: package-2019-11-01 and java + +These settings apply only when `--tag=package-2019-11-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-11-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.storagecache.v2019_11_01 + output-folder: $(azure-libraries-for-java-folder)/storagecache/resource-manager/v2019_11_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-08 and java These settings apply only when `--tag=package-2019-08 --java` is specified on the command line. diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md index d626d64d443b..de19e2e45f8c 100644 --- a/specification/storagecache/resource-manager/readme.md +++ b/specification/storagecache/resource-manager/readme.md @@ -26,7 +26,18 @@ These are the global settings for the StorageCache API. ``` yaml openapi-type: arm -tag: package-2019-08 +tag: package-2019-11-01 +add-credentials: true +title: StorageCacheManagementClient +``` + +### Tag: package-2019-11-01 + +These settings apply only when `--tag=package-2019-11-01` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-01' +input-file: +- Microsoft.StorageCache/stable/2019-11-01/storagecache.json ``` ### Tag: package-2019-08 @@ -92,6 +103,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.StorageCache/stable/2019-11-01/storagecache.json - $(this-folder)/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json ``` diff --git a/specification/storagecache/resource-manager/readme.ruby.md b/specification/storagecache/resource-manager/readme.ruby.md index 209e042d0485..89fe6cc517ce 100644 --- a/specification/storagecache/resource-manager/readme.ruby.md +++ b/specification/storagecache/resource-manager/readme.ruby.md @@ -8,6 +8,24 @@ package-version: 2019-08 azure-arm: true ``` +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2019-11-01 + - tag: package-2019-08 +``` + +### Tag: package-2019-11-01 and ruby + +These settings apply only when `--tag=package-2019-11-01 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-11-01' && $(ruby) +namespace: "Azure::StorageCache::Mgmt::V2019_11_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_storagecache/lib +``` + ### Tag: package-2019-08 and ruby These settings apply only when `--tag=package-2019-08 --ruby` is specified on the command line. From 3e8d1784d5a765406505f22cb51935376062da3f Mon Sep 17 00:00:00 2001 From: Ruoxuan Wang <52271048+ruowan@users.noreply.github.com> Date: Mon, 21 Oct 2019 15:32:29 +0800 Subject: [PATCH 31/54] update ARM email template and fix repoWhiltelist location (#7556) --- .github/sla.yml | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/.github/sla.yml b/.github/sla.yml index 7dcf853a030d..832adeb0572d 100644 --- a/.github/sla.yml +++ b/.github/sla.yml @@ -1,10 +1,10 @@ --- - scheduleTask: action: sendEmailToAssignee + repoWhitelist: + - Azure/azure-rest-api-specs args: booleanFilterExpression: "!(WaitForARMFeedback||WaitingForAzureAPIBoard)" - repoWhitelist: - - Azure/azure-rest-api-specs limit: 48h message: '

    Dear Swagger reviewer,

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



    Quick info.
    • If no response from ARM review board, please send email to armapireview@microsoft.com.
    • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
    • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
    • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
    • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
    • Pls refer to Swagger review process (onenote) for more about Swagger review process.
    Best regards,
    Azure Management Experience

    ' subject: "Action Required: Please respond to PR ${PR_URL}" @@ -13,10 +13,10 @@ - scheduleTask: action: sendEmailToAssignee + repoWhitelist: + - Azure/azure-rest-api-specs args: booleanFilterExpression: "!(WaitForARMFeedback||WaitingForAzureAPIBoard)" - repoWhitelist: - - Azure/azure-rest-api-specs limit: 5d message: '

    Dear Swagger reviewer,

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



    Quick info.
    • If no response from ARM review board, please send email to armapireview@microsoft.com.
    • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
    • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
    • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
    • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
    • Pls refer to Swagger review process (onenote) for more about Swagger review process.
    Best regards,
    Azure Management Experience

    ' subject: "Action Required: Please respond to PR ${PR_URL}" @@ -25,10 +25,10 @@ - scheduleTask: action: sendEmailToAssignee + repoWhitelist: + - Azure/azure-rest-api-specs-pr args: booleanFilterExpression: "!(WaitForARMFeedback||WaitingForAzureAPIBoard||Approved-OkToMerge)" - repoWhitelist: - - Azure/azure-rest-api-specs-pr limit: 48h message: '

    Dear Swagger reviewer,

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



    Quick info.
    • If no response from ARM review board, please send email to armapireview@microsoft.com.
    • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
    • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
    • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
    • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
    • Pls refer to Swagger review process (onenote) for more about Swagger review process.
    Best regards,
    Azure Management Experience

    ' subject: "Action Required: Please respond to PR ${PR_URL}" @@ -37,10 +37,10 @@ - scheduleTask: action: sendEmailToAssignee + repoWhitelist: + - Azure/azure-rest-api-specs-pr args: booleanFilterExpression: "!(WaitForARMFeedback||WaitingForAzureAPIBoard||Approved-OkToMerge)" - repoWhitelist: - - Azure/azure-rest-api-specs-pr limit: 5d message: '

    Dear Swagger reviewer,

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



    Quick info.
    • If no response from ARM review board, please send email to armapireview@microsoft.com.
    • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
    • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
    • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
    • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
    • Pls refer to Swagger review process (onenote) for more about Swagger review process.
    Best regards,
    Azure Management Experience

    ' subject: "Action Required: Please respond to PR ${PR_URL}" @@ -49,11 +49,13 @@ - scheduleTask: action: sendEmail + repoWhitelist: + - Azure/azure-rest-api-specs args: booleanFilterExpression: "(WaitForARMFeedback&&!ARMSignedOff&&!ARMChangesRequested&&!ARMReviewInProgress)" limit: 3d - subject: "ARM team notification email" - message: "Dear ARM team, This is a notification email. The PR ${PR_URL} is waiting on ARM team review over 3 days. Please response to the PR. After response to the PR, please remove WaitForARMFeedback label and the bot won't send notification email about the PR to you again. This is a test email. If you have any suggestion about email template, pls contact to Ruoxuan.Wang(ruowan@microsoft.com)" + subject: "Action Required: Please help to review PR ${PR_URL}" + message: "

    Dear ARM review board,

    Please review PR ${PR_URL}, the PR is waiting for ARM review over 3 days. Thanks.



    Quick info
    • If you have feedback about the notification email, please contact us at vscswagger@microsoft.com.
    • After reviewing, please remove “WaitForARMFeedback” label from PR to correct state.
    Best regards,
    Azure Management Experience

    " to: yungez@microsoft.com description: "send email to ARM team for over 5 days PRs labelled with WaitForARMFeedback" name: "send email to ARM team" From 6004a8b9ae2f4b1e27cb4af06a3fef0ec5f580fe Mon Sep 17 00:00:00 2001 From: Andy Zhang Date: Tue, 22 Oct 2019 00:40:59 +0800 Subject: [PATCH 32/54] add AKS rotateClusterCertificates API (#7436) * add aks rotate-certs operation for 2019-08-01 * feat: use 204 instead of 200 --- ...agedClustersRotateClusterCertificates.json | 12 +++++ .../stable/2019-08-01/managedClusters.json | 44 +++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/examples/ManagedClustersRotateClusterCertificates.json diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/examples/ManagedClustersRotateClusterCertificates.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/examples/ManagedClustersRotateClusterCertificates.json new file mode 100644 index 000000000000..e5ba316fadef --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/examples/ManagedClustersRotateClusterCertificates.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json index ba737fe8743d..15d5f5ecc635 100644 --- a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json @@ -921,6 +921,50 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_RotateClusterCertificates", + "summary": "Rotate certificates of a managed cluster.", + "description": "Rotate certificates of a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Rotate Cluster Certificates": { + "$ref": "./examples/ManagedClustersRotateClusterCertificates.json" + } + } + } } }, "definitions": { From 0c3c17cf985b1d6e9665f64795dc8633717fb900 Mon Sep 17 00:00:00 2001 From: Priyaranjan Pandey Date: Mon, 21 Oct 2019 10:50:33 -0700 Subject: [PATCH 33/54] [Storage] Sync swagger changes from 2019-04-01 to 2019-06-01 apiversion (#7552) * [Storage] Sync swagger changes from 2019-04-01 to 2019-04-01 apiversion * Removing skiptoken which is not being used by the service * The skiptoken is not used by the service, removing it from latest swagger. --- .../stable/2019-06-01/blob.json | 6 -- .../StorageAccountRegenerateKerbKey.json | 35 ++++++++++ .../examples/StorageAccountUpdate.json | 22 ++++++ .../stable/2019-06-01/file.json | 6 -- .../stable/2019-06-01/storage.json | 68 +++++++++++++++++-- 5 files changed, 120 insertions(+), 17 deletions(-) create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKerbKey.json diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json index c699317de8db..36c1fb5a71b9 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json @@ -165,12 +165,6 @@ { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, - { - "name": "$skipToken", - "in": "query", - "type": "string", - "description": "Optional. Continuation token for the list operation." - }, { "name": "$maxpagesize", "in": "query", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKerbKey.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKerbKey.json new file mode 100644 index 000000000000..7fe477cd18a0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountRegenerateKerbKey.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2019-06-01", + "monitor": "true", + "regenerateKey": { + "keyName": "kerb1" + } + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "7xl+yQ4MrVpZCHspveCfy4f8jgTY1wv42gHO8k4bAX+EPvN4hY5uPau/bpofgeye+K9FtgvjkadkLISPfOxlMw==" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "uC+kyJ9/gT81E/+9I1Go4xtOe8sW5rdIm3n6PNIyQ5kGO5OpFq69aWnrn3jLeFIyItzpln9P392U0353RYKvbg==" + }, + { + "keyName": "kerb1", + "permissions": "Full", + "value": "34EzDQuCw1lYBXCGioUybN9dCWSLLzQPdAbYRcLhM957Fy/6IlO/SkaeR9QXKhVgCt8anDq4wYmDcaZ5VXr2Tg==" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json index 9435b6eb1848..76512ae6ebde 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdate.json @@ -9,6 +9,17 @@ "properties": { "networkAcls": { "defaultAction": "Allow" + }, + "azureFilesIdentityBasedAuthentication": { + "directoryServiceOptions": "AD", + "activeDirectoryProperties": { + "domainName": "adtest.com", + "netBiosDomainName": "adtest.com", + "forestName": "adtest.com", + "domainGuid": "aebfc118-9fa9-4732-a21f-d98e41a77ae1", + "domainSid": "S-1-5-21-2400535526-2334094090-2402026252", + "azureStorageSid": "S-1-5-21-2400535526-2334094090-2402026252-0012" + } } } } @@ -29,6 +40,17 @@ "ipRules": [], "virtualNetworkRules": [] }, + "azureFilesIdentityBasedAuthentication": { + "directoryServiceOptions": "AD", + "activeDirectoryProperties": { + "domainName": "adtest.com", + "netBiosDomainName": "adtest.com", + "forestName": "adtest.com", + "domainGuid": "aebfc118-9fa9-4732-a21f-d98e41a77ae1", + "domainSid": "S-1-5-21-2400535526-2334094090-2402026252", + "azureStorageSid": "S-1-5-21-2400535526-2334094090-2402026252-0012" + } + }, "primaryEndpoints": { "web": "https://sto8596.web.core.windows.net/", "dfs": "https://sto8596.dfs.core.windows.net/", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json index 8c1500e04729..f9a7f555f6ce 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json @@ -180,12 +180,6 @@ { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, - { - "name": "$skipToken", - "in": "query", - "type": "string", - "description": "Optional. Continuation token for the list operation." - }, { "name": "$maxpagesize", "in": "query", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json index f51cd270972c..c7f7732f61b6 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json @@ -367,7 +367,7 @@ "StorageAccounts" ], "operationId": "StorageAccounts_ListKeys", - "description": "Lists the access keys for the specified storage account.", + "description": "Lists the access keys or Kerberos keys (if active directory enabled) for the specified storage account.", "x-ms-examples": { "StorageAccountListKeys": { "$ref": "./examples/StorageAccountListKeys.json" @@ -385,6 +385,19 @@ }, { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "kerb" + ], + "x-ms-enum": { + "name": "ListKeyExpand" + }, + "description": "Specifies type of the key to be listed. Possible value is kerb." } ], "responses": { @@ -403,10 +416,13 @@ "StorageAccounts" ], "operationId": "StorageAccounts_RegenerateKey", - "description": "Regenerates one of the access keys for the specified storage account.", + "description": "Regenerates one of the access keys or Kerberos keys for the specified storage account.", "x-ms-examples": { "StorageAccountRegenerateKey": { "$ref": "./examples/StorageAccountRegenerateKey.json" + }, + "StorageAccountRegenerateKerbKey": { + "$ref": "./examples/StorageAccountRegenerateKerbKey.json" } }, "parameters": [ @@ -423,7 +439,7 @@ "schema": { "$ref": "#/definitions/StorageAccountRegenerateKeyParameters" }, - "description": "Specifies name of the key which should be regenerated -- key1 or key2." + "description": "Specifies name of the key which should be regenerated -- key1, key2, kerb1, kerb2." }, { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" @@ -1504,12 +1520,17 @@ "description": "Indicates the directory service used.", "enum": [ "None", - "AADDS" + "AADDS", + "AD" ], "x-ms-enum": { "name": "DirectoryServiceOptions", "modelAsString": true } + }, + "activeDirectoryProperties": { + "$ref": "#/definitions/ActiveDirectoryProperties", + "description": "Required if choose AD." } }, "required": [ @@ -1517,6 +1538,43 @@ ], "description": "Settings for Azure Files identity based authentication." }, + "ActiveDirectoryProperties": { + "properties": { + "domainName": { + "type": "string", + "description": "Specifies the primary domain that the AD DNS server is authoritative for." + }, + "netBiosDomainName": { + "type": "string", + "description": "Specifies the NetBIOS domain name." + }, + "forestName": { + "type": "string", + "description": "Specifies the Active Directory forest to get." + }, + "domainGuid": { + "type": "string", + "description": "Specifies the domain GUID." + }, + "domainSid": { + "type": "string", + "description": "Specifies the security identifier (SID)." + }, + "azureStorageSid": { + "type": "string", + "description": "Specifies the security identifier (SID) for Azure Storage." + } + }, + "required": [ + "domainName", + "netBiosDomainName", + "forestName", + "domainGuid", + "domainSid", + "azureStorageSid" + ], + "description": "Settings properties for Active Directory (AD)." + }, "StorageAccountPropertiesCreateParameters": { "properties": { "customDomain": { @@ -1971,7 +2029,7 @@ "properties": { "keyName": { "type": "string", - "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2, kerb1, kerb2." } }, "required": [ From 9fcf995a147b389702f020d0d3c153cba0fdc0c2 Mon Sep 17 00:00:00 2001 From: omar-el-hariry <39457582+omar-el-hariry@users.noreply.github.com> Date: Mon, 21 Oct 2019 20:43:26 +0200 Subject: [PATCH 34/54] Omelhari/feature assigning ap is (#7503) * Adding feature assigning APIs * Remove Pattern Feature APIs * fix build --- .../preview/v3.0/LUIS-Authoring.json | 890 ++++++++++-------- ...SuccessfulCreatePatternFeatureRequest.json | 18 - ...lGetApplicationVersionFeaturesRequest.json | 9 +- ...ationVersionPhraselistFeaturesRequest.json | 6 +- ...uccessfulGetPatternFeatureInfoRequest.json | 20 - ...essfulGetPhraselistFeatureInfoRequest.json | 3 +- ...essfulUpdatePatternFeatureInfoRequest.json | 22 - ...fulUpdatePhraselistFeatureInfoRequest.json | 3 +- ...essfulAddEntityFeatureRelationRequest.json | 21 + ...essfulAddIntentFeatureRelationRequest.json | 21 + ...fulDeleteEntityFeatureRelationRequest.json | 21 + ...fulDeleteIntentFeatureRelationRequest.json | 21 + ...ccessfulGetEntityFeaturesInfoRequest.json} | 13 +- ...ccessfulGetIntentFeaturesInfoRequest.json} | 16 +- ...uccessfulReplaceEntityFeaturesRequest.json | 26 + ...uccessfulReplaceIntentFeaturesRequest.json | 26 + 16 files changed, 683 insertions(+), 453 deletions(-) delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulCreatePatternFeatureRequest.json delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPatternFeatureInfoRequest.json delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePatternFeatureInfoRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddEntityFeatureRelationRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddIntentFeatureRelationRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteEntityFeatureRelationRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteIntentFeatureRelationRequest.json rename specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/{features/SuccessfulGetApplicationVersionPatternFeaturesRequest.json => model/SuccessfulGetEntityFeaturesInfoRequest.json} (61%) rename specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/{features/SuccessfulDeletePatternFeatureInfoRequest.json => model/SuccessfulGetIntentFeaturesInfoRequest.json} (57%) create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceEntityFeaturesRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceIntentFeaturesRequest.json diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json index 1f7aa67aa23b..44dc8baf0e6d 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json @@ -26,96 +26,6 @@ } ], "paths": { - "/apps/{appId}/versions/{versionId}/patterns": { - "post": { - "description": "[DEPRECATED NOTICE: This operation will soon be removed] Creates a new pattern feature in a version of the application.", - "operationId": "Features_CreatePatternFeature", - "deprecated": true, - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "$ref": "#/parameters/VersionIdInPath" - }, - { - "name": "patternCreateObject", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/PatternCreateObject" - }, - "description": "The Name and Pattern of the feature." - } - ], - "consumes": [ - "application/json" - ], - "responses": { - "201": { - "description": "The ID of the created feature.", - "schema": { - "$ref": "#/definitions/FeatureIDResponse" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Create Pattern Feature request": { - "$ref": "./examples/features/SuccessfulCreatePatternFeatureRequest.json" - } - } - }, - "get": { - "description": "[DEPRECATED NOTICE: This operation will soon be removed] Gets all the pattern features.", - "operationId": "Features_ListApplicationVersionPatternFeatures", - "deprecated": true, - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "$ref": "#/parameters/VersionIdInPath" - }, - { - "$ref": "#/parameters/SkipInPath" - }, - { - "$ref": "#/parameters/TakeInPath" - } - ], - "responses": { - "200": { - "description": "A list of pattern features.", - "schema": { - "$ref": "#/definitions/PatternFeatureInfoList" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Get Application Version Pattern Features request": { - "$ref": "./examples/features/SuccessfulGetApplicationVersionPatternFeaturesRequest.json" - } - } - } - }, "/apps/{appId}/versions/{versionId}/phraselists": { "post": { "description": "Creates a new phraselist feature in a version of the application.", @@ -246,146 +156,6 @@ } } }, - "/apps/{appId}/versions/{versionId}/patterns/{patternId}": { - "get": { - "description": "[DEPRECATED NOTICE: This operation will soon be removed] Gets the specified pattern feature's info in a version of the application.", - "operationId": "Features_GetPatternFeatureInfo", - "deprecated": true, - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "$ref": "#/parameters/VersionIdInPath" - }, - { - "name": "patternId", - "in": "path", - "description": "The pattern feature ID.", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "The pattern feature info.", - "schema": { - "$ref": "#/definitions/PatternFeatureInfo" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Get Pattern Feature Info request": { - "$ref": "./examples/features/SuccessfulGetPatternFeatureInfoRequest.json" - } - } - }, - "put": { - "description": "[DEPRECATED NOTICE: This operation will soon be removed] Updates the pattern, the name and the state of the pattern feature in a version of the application.", - "operationId": "Features_UpdatePatternFeature", - "deprecated": true, - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "$ref": "#/parameters/VersionIdInPath" - }, - { - "name": "patternId", - "in": "path", - "description": "The pattern feature ID.", - "required": true, - "type": "integer" - }, - { - "name": "patternUpdateObject", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/PatternUpdateObject" - }, - "description": "The new values for: - Just a boolean called IsActive, in which case the status of the feature will be changed. - Name, Pattern and a boolean called IsActive to update the feature." - } - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "responses": { - "200": { - "description": "Successful operation.", - "schema": { - "$ref": "#/definitions/OperationStatus" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Successful Update Pattern Feature Info request": { - "$ref": "./examples/features/SuccessfulUpdatePatternFeatureInfoRequest.json" - } - } - }, - "delete": { - "description": "[DEPRECATED NOTICE: This operation will soon be removed] Deletes a pattern feature in a version of the application.", - "operationId": "Features_DeletePatternFeature", - "deprecated": true, - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "$ref": "#/parameters/VersionIdInPath" - }, - { - "name": "patternId", - "in": "path", - "description": "The pattern feature ID.", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "Successful operation.", - "schema": { - "$ref": "#/definitions/OperationStatus" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Delete Pattern Feature Info request": { - "$ref": "./examples/features/SuccessfulDeletePatternFeatureInfoRequest.json" - } - } - } - }, "/apps/{appId}/versions/{versionId}/phraselists/{phraselistId}": { "get": { "description": "Gets phraselist feature info in a version of the application.", @@ -1155,14 +925,324 @@ "$ref": "#/parameters/AppIdInPath" }, { - "$ref": "#/parameters/VersionIdInPath" + "$ref": "#/parameters/VersionIdInPath" + } + ], + "responses": { + "200": { + "description": "A list of the possible prebuilt entity extractors.", + "schema": { + "$ref": "#/definitions/AvailablePrebuiltEntityModels" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Get Available Prebuilt Entity Extractors request": { + "$ref": "./examples/model/SuccessfulGetAvailablePrebuiltEntityExtractorsRequest.json" + } + } + } + }, + "/apps/{appId}/versions/{versionId}/models": { + "get": { + "description": "Gets information about all the intent and entity models in a version of the application.", + "operationId": "Model_ListModels", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "$ref": "#/parameters/SkipInPath" + }, + { + "$ref": "#/parameters/TakeInPath" + } + ], + "responses": { + "200": { + "description": "A list of application model infos.", + "schema": { + "$ref": "#/definitions/ModelsInfoResponseObject" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Get Application Version Model Infos request": { + "$ref": "./examples/model/SuccessfulGetApplicationVersionModelInfosRequest.json" + } + } + } + }, + "/apps/{appId}/versions/{versionId}/models/{modelId}/examples": { + "get": { + "description": "Gets the example utterances for the given intent or entity model in a version of the application.", + "operationId": "Model_Examples", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "name": "modelId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID (GUID) of the model.", + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/SkipInPath" + }, + { + "$ref": "#/parameters/TakeInPath" + } + ], + "responses": { + "200": { + "description": "A list of example utterances for the model.", + "schema": { + "$ref": "#/definitions/ExamplesPerModelResponseObject" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Get Examples Per Model Request": { + "$ref": "./examples/model/SuccessfulGetExamplesPerModelRequest.json" + } + } + } + }, + "/apps/{appId}/versions/{versionId}/intents/{intentId}": { + "get": { + "description": "Gets information about the intent model in a version of the application.", + "operationId": "Model_GetIntent", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "$ref": "#/parameters/IntentIdInPath" + } + ], + "responses": { + "200": { + "description": "An intent model info.", + "schema": { + "$ref": "#/definitions/IntentClassifier" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Get Intent Info request": { + "$ref": "./examples/model/SuccessfulGetIntentInfoRequest.json" + } + } + }, + "put": { + "description": "Updates the name of an intent in a version of the application.", + "operationId": "Model_UpdateIntent", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "$ref": "#/parameters/IntentIdInPath" + }, + { + "name": "modelUpdateObject", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ModelUpdateObject" + }, + "description": "A model object containing the new intent name." + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successful operation.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Rename Intent Model request": { + "$ref": "./examples/model/SuccessfulRenameIntentModelRequest.json" + } + } + }, + "delete": { + "description": "Deletes an intent from a version of the application.", + "operationId": "Model_DeleteIntent", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "$ref": "#/parameters/IntentIdInPath" + }, + { + "name": "deleteUtterances", + "in": "query", + "type": "boolean", + "description": "If true, deletes the intent's example utterances. If false, moves the example utterances to the None intent. The default value is false.", + "default": false + } + ], + "responses": { + "200": { + "description": "Successful operation.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Delete Intent Model request": { + "$ref": "./examples/model/SuccessfulDeleteIntentModelRequest.json" + } + } + } + }, + "/apps/{appId}/versions/{versionId}/entities/{entityId}": { + "get": { + "description": "Gets information about an entity model in a version of the application.", + "operationId": "Model_GetEntity", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "name": "entityId", + "in": "path", + "description": "The entity extractor ID.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "An entity model info.", + "schema": { + "$ref": "#/definitions/NDepthEntityExtractor" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Get Entity Info request": { + "$ref": "./examples/model/SuccessfulGetEntityInfoRequest.json" + } + } + }, + "delete": { + "description": "Deletes an entity or a child from a version of the application.", + "operationId": "Model_DeleteEntity", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "name": "entityId", + "in": "path", + "description": "The entity extractor or the child entity extractor ID.", + "required": true, + "type": "string", + "format": "uuid" } ], "responses": { "200": { - "description": "A list of the possible prebuilt entity extractors.", + "description": "Successfully deleted entity.", "schema": { - "$ref": "#/definitions/AvailablePrebuiltEntityModels" + "$ref": "#/definitions/OperationStatus" } }, "default": { @@ -1176,16 +1256,14 @@ "application/json" ], "x-ms-examples": { - "Successful Get Available Prebuilt Entity Extractors request": { - "$ref": "./examples/model/SuccessfulGetAvailablePrebuiltEntityExtractorsRequest.json" + "Successful Delete Entity Info request": { + "$ref": "./examples/model/SuccessfulDeleteEntityExtractorRequest.json" } } - } - }, - "/apps/{appId}/versions/{versionId}/models": { - "get": { - "description": "Gets information about all the intent and entity models in a version of the application.", - "operationId": "Model_ListModels", + }, + "patch": { + "description": "Updates the name of an entity extractor or the name and instanceOf model of a child entity extractor.", + "operationId": "Model_UpdateEntityChild", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1194,17 +1272,31 @@ "$ref": "#/parameters/VersionIdInPath" }, { - "$ref": "#/parameters/SkipInPath" + "name": "entityId", + "in": "path", + "description": "The entity extractor or the child entity extractor ID.", + "required": true, + "type": "string", + "format": "uuid" }, { - "$ref": "#/parameters/TakeInPath" + "name": "entityModelUpdateObject", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EntityModelUpdateObject" + }, + "description": "A model object containing the name new entity extractor or the name and instance of model of a child entity extractor " } ], + "consumes": [ + "application/json" + ], "responses": { "200": { - "description": "A list of application model infos.", + "description": "Successful operation.", "schema": { - "$ref": "#/definitions/ModelsInfoResponseObject" + "$ref": "#/definitions/OperationStatus" } }, "default": { @@ -1218,16 +1310,16 @@ "application/json" ], "x-ms-examples": { - "Successful Get Application Version Model Infos request": { - "$ref": "./examples/model/SuccessfulGetApplicationVersionModelInfosRequest.json" + "Successful Update Entity Extractor request": { + "$ref": "./examples/model/SuccessfulUpdateEntityExtractorRequest.json" } } } }, - "/apps/{appId}/versions/{versionId}/models/{modelId}/examples": { - "get": { - "description": "Gets the example utterances for the given intent or entity model in a version of the application.", - "operationId": "Model_Examples", + "/apps/{appId}/versions/{versionId}/intents/{intentId}/features": { + "post": { + "description": "Adds a new feature relation to be used by the intent in a version of the application.", + "operationId": "Features_AddIntentFeature", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1236,25 +1328,26 @@ "$ref": "#/parameters/VersionIdInPath" }, { - "name": "modelId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID (GUID) of the model.", - "x-ms-parameter-location": "method" - }, - { - "$ref": "#/parameters/SkipInPath" + "$ref": "#/parameters/IntentIdInPath" }, { - "$ref": "#/parameters/TakeInPath" + "name": "featureRelationCreateObject", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ModelFeatureInformation" + }, + "description": "A Feature relation information object." } ], + "consumes": [ + "application/json" + ], "responses": { "200": { - "description": "A list of example utterances for the model.", + "description": "Successful operation.", "schema": { - "$ref": "#/definitions/ExamplesPerModelResponseObject" + "$ref": "#/definitions/OperationStatus" } }, "default": { @@ -1268,16 +1361,14 @@ "application/json" ], "x-ms-examples": { - "Successful Get Examples Per Model Request": { - "$ref": "./examples/model/SuccessfulGetExamplesPerModelRequest.json" + "Successful Add Feature Relation request": { + "$ref": "./examples/model/SuccessfulAddIntentFeatureRelationRequest.json" } } - } - }, - "/apps/{appId}/versions/{versionId}/intents/{intentId}": { + }, "get": { - "description": "Gets information about the intent model in a version of the application.", - "operationId": "Model_GetIntent", + "description": "Gets the information of the features used by the intent in a version of the application.", + "operationId": "Model_GetIntentFeatures", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1290,31 +1381,31 @@ } ], "responses": { - "200": { - "description": "An intent model info.", - "schema": { - "$ref": "#/definitions/IntentClassifier" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } + "200": { + "description": "A list of feature information objects for the intent.", + "schema": { + "$ref": "#/definitions/FeaturesPerModelResponseObject" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } }, "produces": [ "application/json" ], "x-ms-examples": { - "Successful Get Intent Info request": { - "$ref": "./examples/model/SuccessfulGetIntentInfoRequest.json" + "Successful Get Features information request": { + "$ref": "./examples/model/SuccessfulGetIntentFeaturesInfoRequest.json" } } }, "put": { - "description": "Updates the name of an intent in a version of the application.", - "operationId": "Model_UpdateIntent", + "description": "Updates the information of the features used by the intent in a version of the application.", + "operationId": "Model_ReplaceIntentFeatures", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1326,13 +1417,13 @@ "$ref": "#/parameters/IntentIdInPath" }, { - "name": "modelUpdateObject", + "name": "featureRelationsUpdateObject", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ModelUpdateObject" + "$ref": "#/definitions/FeaturesPerModelResponseObject" }, - "description": "A model object containing the new intent name." + "description": "A list of feature information objects containing the new feature relations." } ], "consumes": [ @@ -1356,14 +1447,14 @@ "application/json" ], "x-ms-examples": { - "Successful Rename Intent Model request": { - "$ref": "./examples/model/SuccessfulRenameIntentModelRequest.json" + "Successful Replace Features request": { + "$ref": "./examples/model/SuccessfulReplaceIntentFeaturesRequest.json" } } }, "delete": { - "description": "Deletes an intent from a version of the application.", - "operationId": "Model_DeleteIntent", + "description": "Deletes a relation from the feature relations used by the intent in a version of the application.", + "operationId": "Model_DeleteIntentFeature", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1375,11 +1466,13 @@ "$ref": "#/parameters/IntentIdInPath" }, { - "name": "deleteUtterances", - "in": "query", - "type": "boolean", - "description": "If true, deletes the intent's example utterances. If false, moves the example utterances to the None intent. The default value is false.", - "default": false + "name": "featureRelationDeleteObject", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ModelFeatureInformation" + }, + "description": "A feature information object containing the feature relation to delete." } ], "responses": { @@ -1400,16 +1493,16 @@ "application/json" ], "x-ms-examples": { - "Successful Delete Intent Model request": { - "$ref": "./examples/model/SuccessfulDeleteIntentModelRequest.json" + "Successful Delete feature relation request": { + "$ref": "./examples/model/SuccessfulDeleteIntentFeatureRelationRequest.json" } } } }, - "/apps/{appId}/versions/{versionId}/entities/{entityId}": { - "get": { - "description": "Gets information about an entity model in a version of the application.", - "operationId": "Model_GetEntity", + "/apps/{appId}/versions/{versionId}/entities/{entityId}/features": { + "post": { + "description": "Adds a new feature relation to be used by the entity in a version of the application.", + "operationId": "Features_AddEntityFeature", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1418,19 +1511,26 @@ "$ref": "#/parameters/VersionIdInPath" }, { - "name": "entityId", - "in": "path", - "description": "The entity extractor ID.", + "$ref": "#/parameters/EntityIdInPath" + }, + { + "name": "featureRelationCreateObject", + "in": "body", "required": true, - "type": "string", - "format": "uuid" + "schema": { + "$ref": "#/definitions/ModelFeatureInformation" + }, + "description": "A Feature relation information object." } ], + "consumes": [ + "application/json" + ], "responses": { "200": { - "description": "An entity model info.", + "description": "Successful operation.", "schema": { - "$ref": "#/definitions/NDepthEntityExtractor" + "$ref": "#/definitions/OperationStatus" } }, "default": { @@ -1444,14 +1544,14 @@ "application/json" ], "x-ms-examples": { - "Successful Get Entity Info request": { - "$ref": "./examples/model/SuccessfulGetEntityInfoRequest.json" + "Successful Add Feature Relation request": { + "$ref": "./examples/model/SuccessfulAddEntityFeatureRelationRequest.json" } } }, - "delete": { - "description": "Deletes an entity or a child from a version of the application.", - "operationId": "Model_DeleteEntity", + "get": { + "description": "Gets the information of the features used by the entity in a version of the application.", + "operationId": "Model_GetEntityFeatures", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1460,17 +1560,61 @@ "$ref": "#/parameters/VersionIdInPath" }, { - "name": "entityId", - "in": "path", - "description": "The entity extractor or the child entity extractor ID.", + "$ref": "#/parameters/EntityIdInPath" + } + ], + "responses": { + "200": { + "description": "A list of feature information objects for the entity.", + "schema": { + "$ref": "#/definitions/FeaturesPerModelResponseObject" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Get Features information request": { + "$ref": "./examples/model/SuccessfulGetEntityFeaturesInfoRequest.json" + } + } + }, + "put": { + "description": "Updates the information of the features used by the entity in a version of the application.", + "operationId": "Model_ReplaceEntityFeatures", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + }, + { + "$ref": "#/parameters/EntityIdInPath" + }, + { + "name": "featureRelationsUpdateObject", + "in": "body", "required": true, - "type": "string", - "format": "uuid" + "schema": { + "$ref": "#/definitions/FeaturesPerModelResponseObject" + }, + "description": "A list of feature information objects containing the new feature relations." } ], + "consumes": [ + "application/json" + ], "responses": { "200": { - "description": "Successfully deleted entity.", + "description": "Successful operation.", "schema": { "$ref": "#/definitions/OperationStatus" } @@ -1486,14 +1630,14 @@ "application/json" ], "x-ms-examples": { - "Successful Delete Entity Info request": { - "$ref": "./examples/model/SuccessfulDeleteEntityExtractorRequest.json" + "Successful Replace Features request": { + "$ref": "./examples/model/SuccessfulReplaceEntityFeaturesRequest.json" } } }, - "patch": { - "description": "Updates the name of an entity extractor or the name and instanceOf model of a child entity extractor.", - "operationId": "Model_UpdateEntityChild", + "delete": { + "description": "Deletes a relation from the feature relations used by the entity in a version of the application.", + "operationId": "Model_DeleteEntityFeature", "parameters": [ { "$ref": "#/parameters/AppIdInPath" @@ -1502,26 +1646,18 @@ "$ref": "#/parameters/VersionIdInPath" }, { - "name": "entityId", - "in": "path", - "description": "The entity extractor or the child entity extractor ID.", - "required": true, - "type": "string", - "format": "uuid" + "$ref": "#/parameters/EntityIdInPath" }, { - "name": "entityModelUpdateObject", + "name": "featureRelationDeleteObject", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/EntityModelUpdateObject" + "$ref": "#/definitions/ModelFeatureInformation" }, - "description": "A model object containing the name new entity extractor or the name and instance of model of a child entity extractor " + "description": "A feature information object containing the feature relation to delete." } ], - "consumes": [ - "application/json" - ], "responses": { "200": { "description": "Successful operation.", @@ -1540,8 +1676,8 @@ "application/json" ], "x-ms-examples": { - "Successful Update Entity Extractor request": { - "$ref": "./examples/model/SuccessfulUpdateEntityExtractorRequest.json" + "Successful Delete feature relation request": { + "$ref": "./examples/model/SuccessfulDeleteEntityFeatureRelationRequest.json" } } } @@ -8070,25 +8206,6 @@ } } }, - "PatternUpdateObject": { - "description": "Object model for updating an existing Pattern feature.", - "type": "object", - "properties": { - "pattern": { - "description": "The Regular Expression to match.", - "type": "string" - }, - "name": { - "description": "Name of the feature.", - "type": "string" - }, - "isActive": { - "description": "Indicates if the Pattern feature is enabled.", - "default": true, - "type": "boolean" - } - } - }, "ClosedList": { "description": "Exported Model - A list entity.", "type": "object", @@ -8159,20 +8276,6 @@ } } }, - "PatternCreateObject": { - "description": "Object model for creating a Pattern feature.", - "type": "object", - "properties": { - "pattern": { - "description": "The Regular Expression to match.", - "type": "string" - }, - "name": { - "description": "Name of the feature.", - "type": "string" - } - } - }, "WordListObject": { "description": "Sublist of items for a list entity.", "type": "object", @@ -8387,6 +8490,11 @@ "description": "An exchangeable phrase list feature are serves as single feature to the LUIS underlying training algorithm. It is used as a lexicon lookup feature where its value is 1 if the lexicon contains a given word or 0 if it doesn’t. Think of an exchangeable as a synonyms list. A non-exchangeable phrase list feature has all the phrases in the list serve as separate features to the underlying training algorithm. So, if you your phrase list feature contains 5 phrases, they will be mapped to 5 separate features. You can think of the non-exchangeable phrase list feature as an additional bag of words that you are willing to add to LUIS existing vocabulary features. Think of a non-exchangeable as set of different words. Default value is true.", "default": true, "type": "boolean" + }, + "enabledForAllModels": { + "description": "Indicates if the Phraselist is enabled for all models in the application.", + "default": true, + "type": "boolean" } } }, @@ -9213,6 +9321,10 @@ "isActive": { "description": "Indicates if the feature is enabled.", "type": "boolean" + }, + "enabledForAllModels": { + "description": "Indicates if the feature is enabled for all models in the application.", + "type": "boolean" } } }, @@ -10022,6 +10134,27 @@ } } }, + "FeaturesPerModelResponseObject":{ + "description": "A list of feature information objects per model.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelFeatureInformation" + } + }, + "ModelFeatureInformation":{ + "description": "An object containing the model feature information either the model name or feature name.", + "type": "object", + "properties": { + "modelName": { + "type": "string", + "description": "The name of the model used." + }, + "featureName": { + "type": "string", + "description": "The name of the feature used." + } + } + }, "PatternAny": { "description": "Pattern.Any Entity Extractor.", "type": "object", @@ -10180,6 +10313,15 @@ "format": "uuid", "x-ms-parameter-location": "method" }, + "EntityIdInPath": { + "name": "entityId", + "in": "path", + "description": "The entity extractor ID.", + "required": true, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method" + }, "SlotNameInPath": { "name": "slotName", "in": "path", diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulCreatePatternFeatureRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulCreatePatternFeatureRequest.json deleted file mode 100644 index 35e57c737e43..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulCreatePatternFeatureRequest.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", - "versionId": "0.1", - "patternCreateObject": { - "name": "EmailPattern", - "pattern": "\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}\\b" - } - }, - "responses": { - "201": { - "headers": {}, - "body": 83147 - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionFeaturesRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionFeaturesRequest.json index 66a84bc09fa0..3a70755fff0f 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionFeaturesRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionFeaturesRequest.json @@ -17,14 +17,16 @@ "name": "Cities", "phrases": "Seattle,New York,Paris,Moscow,Beijin", "isExchangeable": true, - "isActive": true + "isActive": true, + "enabledForAllModels": true }, { "id": 74598, "name": "DaysOfWeek", "phrases": "monday,tuesday,wednesday,thursday,friday,saturday,sunday", "isExchangeable": true, - "isActive": true + "isActive": true, + "enabledForAllModels": true } ], "patternFeatures": [ @@ -32,7 +34,8 @@ "id": 81231, "name": "EmailPattern", "pattern": "\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}\\b", - "isActive": true + "isActive": true, + "enabledForAllModels": true } ] } diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPhraselistFeaturesRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPhraselistFeaturesRequest.json index bb9025bc0045..3a6f5e4b33e9 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPhraselistFeaturesRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPhraselistFeaturesRequest.json @@ -14,14 +14,16 @@ "name": "Cities", "phrases": "Seattle,New York,Paris,Moscow,Beijin", "isExchangeable": true, - "isActive": true + "isActive": true, + "enabledForAllModels": true }, { "id": 97832, "name": "DaysOfWeek", "phrases": "monday,tuesday,wednesday,thursday,friday,saturday,sunday", "isExchangeable": true, - "isActive": true + "isActive": true, + "enabledForAllModels": true } ] } diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPatternFeatureInfoRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPatternFeatureInfoRequest.json deleted file mode 100644 index fafa171d1690..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPatternFeatureInfoRequest.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", - "versionId": "0.1", - "patternId": 7892 - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": 7892, - "name": "EmailPattern", - "pattern": "\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}\\b", - "isActive": true - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPhraselistFeatureInfoRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPhraselistFeatureInfoRequest.json index 8e50aee9467c..52649ceb5c3d 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPhraselistFeatureInfoRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetPhraselistFeatureInfoRequest.json @@ -14,7 +14,8 @@ "name": "DaysOfWeek", "phrases": "monday,tuesday,wednesday,thursday,friday,saturday,sunday", "isExchangeable": true, - "isActive": true + "isActive": true, + "enabledForAllModels": true } } } diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePatternFeatureInfoRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePatternFeatureInfoRequest.json deleted file mode 100644 index 3e3bdc463952..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePatternFeatureInfoRequest.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", - "versionId": "0.1", - "patternId": 8342, - "patternUpdateObject": { - "name": "ModifiedEmailPattern", - "pattern": "\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}\\b" - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "code": "Success", - "message": "Operation Successful" - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePhraselistFeatureInfoRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePhraselistFeatureInfoRequest.json index 1d7675a2f4be..9faceb14a074 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePhraselistFeatureInfoRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulUpdatePhraselistFeatureInfoRequest.json @@ -9,7 +9,8 @@ "name": "DaysOfWeek", "phrases": "monday,tuesday,wednesday,thursday,friday,saturday,sunday", "isActive": false, - "isExchangeable": true + "isExchangeable": true, + "enabledForAllModels": false } }, "responses": { diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddEntityFeatureRelationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddEntityFeatureRelationRequest.json new file mode 100644 index 000000000000..03f889dfae4f --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddEntityFeatureRelationRequest.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", + "versionId": "0.1", + "entityId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f", + "featureRelationCreateObject": { + "featureName": "Phraselist1" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "code": "Success", + "message": "Operation Successful" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddIntentFeatureRelationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddIntentFeatureRelationRequest.json new file mode 100644 index 000000000000..232262f1e80e --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulAddIntentFeatureRelationRequest.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", + "versionId": "0.1", + "intentId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f", + "featureRelationCreateObject": { + "featureName": "Phraselist1" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "code": "Success", + "message": "Operation Successful" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteEntityFeatureRelationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteEntityFeatureRelationRequest.json new file mode 100644 index 000000000000..bead51b78678 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteEntityFeatureRelationRequest.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", + "versionId": "0.1", + "entityId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f", + "featureRelationDeleteObject": { + "featureName": "Phraselist1" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "code": "Success", + "message": "Operation Successful" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteIntentFeatureRelationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteIntentFeatureRelationRequest.json new file mode 100644 index 000000000000..d59cbeb99c3f --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulDeleteIntentFeatureRelationRequest.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", + "versionId": "0.1", + "intentId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f", + "featureRelationDeleteObject": { + "featureName": "Phraselist1" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "code": "Success", + "message": "Operation Successful" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPatternFeaturesRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntityFeaturesInfoRequest.json similarity index 61% rename from specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPatternFeaturesRequest.json rename to specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntityFeaturesInfoRequest.json index f0c92a45266f..b52055a2289c 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulGetApplicationVersionPatternFeaturesRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntityFeaturesInfoRequest.json @@ -3,19 +3,20 @@ "Endpoint": "{Endpoint}", "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", - "versionId": "0.1" + "versionId": "0.1", + "entityId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f" }, "responses": { "200": { "headers": {}, "body": [ { - "id": 601765, - "name": "PatternIP", - "pattern": "\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\b", - "isActive": true + "featureName": "Phraselist1" + }, + { + "modelName": "None" } ] } } -} +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulDeletePatternFeatureInfoRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentFeaturesInfoRequest.json similarity index 57% rename from specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulDeletePatternFeatureInfoRequest.json rename to specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentFeaturesInfoRequest.json index a015437cf345..12130103cb4b 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/features/SuccessfulDeletePatternFeatureInfoRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentFeaturesInfoRequest.json @@ -4,15 +4,19 @@ "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", "versionId": "0.1", - "patternId": 8342 + "intentId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f" }, "responses": { "200": { "headers": {}, - "body": { - "code": "Success", - "message": "Operation Successful" - } + "body": [ + { + "featureName": "Phraselist1" + }, + { + "modelName": "None" + } + ] } } -} +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceEntityFeaturesRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceEntityFeaturesRequest.json new file mode 100644 index 000000000000..3f682ab3ac02 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceEntityFeaturesRequest.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", + "versionId": "0.1", + "entityId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f", + "featureRelationsUpdateObject": [ + { + "featureName": "Phraselist1" + }, + { + "modelName": "None" + } + ] + }, + "responses": { + "200": { + "headers": {}, + "body": { + "code": "Success", + "message": "Operation Successful" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceIntentFeaturesRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceIntentFeaturesRequest.json new file mode 100644 index 000000000000..a5246bf438ca --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulReplaceIntentFeaturesRequest.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", + "versionId": "0.1", + "intentId": "d7a08f1a-d276-4364-b2d5-b0235c61e37f", + "featureRelationsUpdateObject": [ + { + "featureName": "Phraselist1" + }, + { + "modelName": "None" + } + ] + }, + "responses": { + "200": { + "headers": {}, + "body": { + "code": "Success", + "message": "Operation Successful" + } + } + } +} \ No newline at end of file From 5e3c3a71a0aafb424271a74230e24c1897653f2f Mon Sep 17 00:00:00 2001 From: Yang Yuan Date: Mon, 21 Oct 2019 12:01:10 -0700 Subject: [PATCH 35/54] Refactory CognitiveServicesAccount model specification. (#7415) * Refactory CognitiveServicesAccount model specification. * fix samples --- .../stable/2017-04-18/cognitiveservices.json | 120 ++++++------------ .../2017-04-18/examples/CreateAccount.json | 2 +- .../2017-04-18/examples/UpdateAccount.json | 2 +- 3 files changed, 44 insertions(+), 80 deletions(-) diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json index 8dce807da01d..b5988fc4f27a 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json @@ -58,11 +58,11 @@ "description": "The name of Cognitive Services account." }, { - "name": "parameters", + "name": "account", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/CognitiveServicesAccountCreateParameters" + "$ref": "#/definitions/CognitiveServicesAccount" }, "description": "The parameters to provide for the created account." }, @@ -124,12 +124,11 @@ "description": "The name of Cognitive Services account." }, { - "name": "parameters", + "name": "account", "in": "body", "required": true, - "x-ms-client-flatten": true, "schema": { - "$ref": "#/definitions/CognitiveServicesAccountUpdateParameters" + "$ref": "#/definitions/CognitiveServicesAccount" }, "description": "The parameters to provide for the created account." }, @@ -638,7 +637,7 @@ "tags": [ "CognitiveServicesAccounts" ], - "operationId": "CheckSkuAvailability_List", + "operationId": "CheckSkuAvailability", "description": "Check available SKUs.", "x-ms-examples": { "Check SKU Availability": { @@ -718,64 +717,10 @@ } }, "definitions": { - "CognitiveServicesAccountCreateParameters": { - "properties": { - "sku": { - "$ref": "#/definitions/Sku", - "description": "Required. Gets or sets the SKU of the resource." - }, - "kind": { - "$ref": "#/definitions/CognitiveServicesAccountKind", - "description": "Required. Gets or sets the Kind of the resource." - }, - "location": { - "type": "string", - "description": "Required. Gets or sets the location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo region is specified on update the request will succeed." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." - }, - "properties": { - "type": "object", - "description": "Must exist in the request. Must be an empty object. Must not be null." - } - }, - "required": [ - "sku", - "kind", - "location", - "properties" - ], - "description": "The parameters to provide for the account." - }, "CognitiveServicesAccountKind": { "type": "string", "description": "Required. Indicates the type of cognitive service account." }, - "CognitiveServicesAccountUpdateParameters": { - "properties": { - "sku": { - "$ref": "#/definitions/Sku", - "description": "Gets or sets the SKU of the resource." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." - }, - "properties": { - "type": "object", - "description": "Additional properties for Account. Only provided fields will be updated." - } - }, - "description": "The parameters to provide for the account." - }, "Sku": { "properties": { "name": { @@ -812,7 +757,8 @@ "properties": { "etag": { "type": "string", - "description": "Entity Tag" + "description": "Entity Tag", + "readOnly": true }, "id": { "type": "string", @@ -820,8 +766,8 @@ "readOnly": true }, "kind": { - "type": "string", - "description": "Type of cognitive service account." + "$ref": "#/definitions/CognitiveServicesAccountKind", + "description": "The Kind of the resource." }, "location": { "type": "string", @@ -833,7 +779,6 @@ "readOnly": true }, "properties": { - "x-ms-client-flatten": true, "$ref": "#/definitions/CognitiveServicesAccountProperties", "description": "Properties of Cognitive Services account." }, @@ -894,11 +839,13 @@ }, "endpoint": { "type": "string", - "description": "Endpoint of the created account." + "description": "Endpoint of the created account.", + "readOnly": true }, "internalId": { "type": "string", - "description": "The internal identifier." + "description": "The internal identifier.", + "readOnly": true }, "customSubDomainName": { "type": "string", @@ -907,10 +854,39 @@ "networkAcls": { "$ref": "#/definitions/NetworkRuleSet", "description": "A collection of rules governing the accessibility from specific network locations." + }, + "apiProperties": { + "$ref": "#/definitions/CognitiveServicesAccountApiProperties", + "description": "The api properties for special APIs." } }, "description": "Properties of Cognitive Services account." }, + "CognitiveServicesAccountApiProperties": { + "properties": { + "qnaRuntimeEndpoint": { + "type": "string", + "description": "(QnAMaker Only) The runtime endpoint of QnAMaker." + }, + "statisticsEnabled": { + "type": "boolean", + "description": "(Bing Search Only) The flag to enable statistics of Bing Search." + }, + "eventHubConnectionString": { + "type": "string", + "description": "(Personalization Only) The flag to enable statistics of Bing Search.", + "pattern": "^( *)Endpoint=sb://(.*);( *)SharedAccessKeyName=(.*);( *)SharedAccessKey=(.*)$", + "maxLength": 1000 + }, + "storageAccountConnectionString": { + "type": "string", + "description": "(Personalization Only) The storage account connection string.", + "pattern": "^(( *)DefaultEndpointsProtocol=(http|https)( *);( *))?AccountName=(.*)AccountKey=(.*)EndpointSuffix=(.*)$", + "maxLength": 1000 + } + }, + "description": "The api properties for special APIs." + }, "CognitiveServicesAccountKeys": { "properties": { "key1": { @@ -1383,18 +1359,6 @@ }, "NetworkRuleSet": { "properties": { - "bypass": { - "type": "string", - "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.", - "enum": [ - "AzureServices", - "None" - ], - "x-ms-enum": { - "name": "NetworkRuleBypassOptions", - "modelAsString": true - } - }, "defaultAction": { "type": "string", "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json index a03d569cebb0..0fb6620ac0c8 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json @@ -4,7 +4,7 @@ "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", "resourceGroupName": "felixwa-01", "accountName": "testCreate1", - "parameters": { + "account": { "location": "West US", "kind": "Emotion", "sku": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json index 85ccd6e423c5..5202d73879af 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json @@ -4,7 +4,7 @@ "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", "resourceGroupName": "bvttest", "accountName": "bingSearch", - "parameters": { + "account": { "sku": { "name": "S2" } From 6a15a807496f036d89f6f251b9a12945b6b001ae Mon Sep 17 00:00:00 2001 From: Zhenfeng Date: Mon, 21 Oct 2019 12:41:46 -0700 Subject: [PATCH 36/54] [SRP] Add CORS to common types (#7562) --- .../stable/2019-06-01/blob.json | 68 +---------------- .../stable/2019-06-01/common.json | 76 +++++++++++++++++++ .../stable/2019-06-01/file.json | 2 +- 3 files changed, 78 insertions(+), 68 deletions(-) create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json index 36c1fb5a71b9..a3e7f61c4865 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json @@ -1124,7 +1124,7 @@ "properties": { "properties": { "cors": { - "$ref": "#/definitions/CorsRules", + "$ref": "./common.json#/definitions/CorsRules", "description": "Specifies CORS rules for the Blob service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Blob service." }, "defaultServiceVersion": { @@ -1192,72 +1192,6 @@ }, "description": "The blob service properties for soft delete." }, - "CorsRules": { - "properties": { - "corsRules": { - "type": "array", - "items": { - "description": "Specifies a CORS rule for the Blob service. ", - "$ref": "#/definitions/CorsRule" - }, - "description": "The List of CORS rules. You can include up to five CorsRule elements in the request. " - } - }, - "description": "Sets the CORS rules. You can include up to five CorsRule elements in the request. " - }, - "CorsRule": { - "properties": { - "allowedOrigins": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or \"*\" to allow all domains" - }, - "allowedMethods": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "DELETE", - "GET", - "HEAD", - "MERGE", - "POST", - "OPTIONS", - "PUT" - ] - }, - "description": "Required if CorsRule element is present. A list of HTTP methods that are allowed to be executed by the origin." - }, - "maxAgeInSeconds": { - "type": "integer", - "description": "Required if CorsRule element is present. The number of seconds that the client/browser should cache a preflight response." - }, - "exposedHeaders": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Required if CorsRule element is present. A list of response headers to expose to CORS clients." - }, - "allowedHeaders": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Required if CorsRule element is present. A list of headers allowed to be part of the cross-origin request." - } - }, - "required": [ - "allowedOrigins", - "allowedMethods", - "maxAgeInSeconds", - "exposedHeaders", - "allowedHeaders" - ], - "description": "Specifies a CORS rule for the Blob service." - }, "LeaseContainerRequest": { "properties": { "action": { diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json new file mode 100644 index 000000000000..d3734f098d55 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json @@ -0,0 +1,76 @@ +{ + "swagger": "2.0", + "info": { + "title": "Storage", + "description": "Storage Resource Provider API Common Types", + "version": "2019-06-01" + }, + "definitions": { + "CorsRules": { + "properties": { + "corsRules": { + "type": "array", + "items": { + "description": "Specifies a CORS rule for the Blob service. ", + "$ref": "#/definitions/CorsRule" + }, + "description": "The List of CORS rules. You can include up to five CorsRule elements in the request. " + } + }, + "description": "Sets the CORS rules. You can include up to five CorsRule elements in the request. " + }, + "CorsRule": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or \"*\" to allow all domains" + }, + "allowedMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "DELETE", + "GET", + "HEAD", + "MERGE", + "POST", + "OPTIONS", + "PUT" + ] + }, + "description": "Required if CorsRule element is present. A list of HTTP methods that are allowed to be executed by the origin." + }, + "maxAgeInSeconds": { + "type": "integer", + "description": "Required if CorsRule element is present. The number of seconds that the client/browser should cache a preflight response." + }, + "exposedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of response headers to expose to CORS clients." + }, + "allowedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of headers allowed to be part of the cross-origin request." + } + }, + "required": [ + "allowedOrigins", + "allowedMethods", + "maxAgeInSeconds", + "exposedHeaders", + "allowedHeaders" + ], + "description": "Specifies a CORS rule for the Blob service." + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json index f9a7f555f6ce..b781e6ec5f61 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json @@ -430,7 +430,7 @@ "properties": { "properties": { "cors": { - "$ref": "../../../../../storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json#/definitions/CorsRules", + "$ref": "./common.json#/definitions/CorsRules", "description": "Specifies CORS rules for the File service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the File service." } }, From 71db5461832a424d6d4daeab0bd8e05e1cf5ffd9 Mon Sep 17 00:00:00 2001 From: Rohan Kulkarni <36928710+rokulka@users.noreply.github.com> Date: Tue, 22 Oct 2019 01:34:27 +0530 Subject: [PATCH 37/54] Updating the docs to include rankerType field in QueryDTO (#7538) * Updating the docs to include rankerType field in QueryDTO * PR comments --- .../data-plane/QnAMaker/stable/v4.0/QnAMakerRuntime.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMakerRuntime.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMakerRuntime.json index adc3dd313096..4707f478307c 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMakerRuntime.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMakerRuntime.json @@ -357,6 +357,10 @@ } ] }, + "rankerType": { + "type": "string", + "description": "Optional field. Set to 'QuestionOnly' for using a question only Ranker." + }, "strictFilters": { "type": "array", "description": "Find only answers that contain these metadata.", From 4032496599d3c3ddeda7b76dcae3083ef2f667eb Mon Sep 17 00:00:00 2001 From: Bertrand Le Roy Date: Mon, 21 Oct 2019 13:33:05 -0700 Subject: [PATCH 38/54] [Azure Search] Apply branding changes to stable/2019-05-06 and track1/stable/2019-05-06 (#7511) * Apply branding changes to stable/2019-05-06 and track1/stable/2019-05-06 * Address code review comments --- .../stable/2019-05-06/searchindex.json | 36 +++---- .../track1/stable/2019-05-06/searchindex.json | 36 +++---- .../stable/2019-05-06/searchservice.json | 100 +++++++++--------- .../stable/2019-05-06/searchservice.json | 100 +++++++++--------- 4 files changed, 136 insertions(+), 136 deletions(-) diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json index 033e280ba681..15578ddb879e 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "SearchIndexClient", - "description": "Client that can be used to query an Azure Search index and upload, merge, or delete documents.", + "description": "Client that can be used to query an index and upload, merge, or delete documents.", "version": "2019-05-06", "x-ms-code-generation-settings": { "useDateTimeOffset": true, @@ -80,7 +80,7 @@ "$ref": "./examples/SearchIndexSearchDocumentsGet.json" } }, - "description": "Searches for documents in the Azure Search index.", + "description": "Searches for documents in the index.", "parameters": [ { "name": "search", @@ -312,7 +312,7 @@ "$ref": "./examples/SearchIndexSearchDocumentsPost.json" } }, - "description": "Searches for documents in the Azure Search index.", + "description": "Searches for documents in the index.", "parameters": [ { "name": "searchRequest", @@ -356,7 +356,7 @@ "$ref": "./examples/SearchIndexGetDocument.json" } }, - "description": "Retrieves a document from the Azure Search index.", + "description": "Retrieves a document from the index.", "parameters": [ { "name": "key", @@ -406,7 +406,7 @@ "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" } }, - "description": "Suggests documents in the Azure Search index that match the given partial query text.", + "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { "name": "search", @@ -550,7 +550,7 @@ "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" } }, - "description": "Suggests documents in the Azure Search index that match the given partial query text.", + "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { "name": "suggestRequest", @@ -593,7 +593,7 @@ "$ref": "./examples/SearchIndexIndexDocuments.json" } }, - "description": "Sends a batch of document write actions to the Azure Search index.", + "description": "Sends a batch of document write actions to the index.", "parameters": [ { "name": "batch", @@ -642,7 +642,7 @@ "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" } }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the Azure Search index.", + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", "parameters": [ { "$ref": "#/parameters/ClientRequestIdParameter" @@ -780,7 +780,7 @@ "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" } }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the Azure Search index.", + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", "parameters": [ { "$ref": "#/parameters/ClientRequestIdParameter" @@ -831,7 +831,7 @@ "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." } }, - "description": "Response containing suggestion query results from an Azure Search index." + "description": "Response containing suggestion query results from an index." }, "SuggestResult": { "properties": { @@ -864,7 +864,7 @@ "format": "int64", "readOnly": true, "x-ms-client-name": "Count", - "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Search can't return all the requested documents in a single Search response." + "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." }, "@search.coverage": { "type": "number", @@ -889,7 +889,7 @@ "$ref": "#/definitions/SearchRequest", "readOnly": true, "x-ms-client-name": "NextPageParameters", - "description": "Continuation JSON payload returned when Azure Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." + "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." }, "value": { "type": "array", @@ -904,10 +904,10 @@ "type": "string", "readOnly": true, "x-ms-client-name": "NextLink", - "description": "Continuation URL returned when Azure Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." + "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." } }, - "description": "Response containing search results from an Azure Search index." + "description": "Response containing search results from an index." }, "SearchResult": { "properties": { @@ -949,7 +949,7 @@ "required": [ "value" ], - "description": "Contains a batch of document write actions to send to the Azure Search index." + "description": "Contains a batch of document write actions to send to the index." }, "IndexAction": { "properties": { @@ -1310,7 +1310,7 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": true, - "description": "The name of the Azure Search service.", + "description": "The name of the search service.", "x-ms-parameter-location": "client" }, "SearchDnsSuffixParameter": { @@ -1320,7 +1320,7 @@ "type": "string", "default": "search.windows.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the Azure Search service. The default is search.windows.net.", + "description": "The DNS suffix of the search service. The default is search.windows.net.", "x-ms-parameter-location": "client" }, "IndexNameParameter": { @@ -1329,7 +1329,7 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": false, - "description": "The name of the Azure Search index.", + "description": "The name of the index.", "x-ms-parameter-location": "client" } } diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json index 033e280ba681..15578ddb879e 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "SearchIndexClient", - "description": "Client that can be used to query an Azure Search index and upload, merge, or delete documents.", + "description": "Client that can be used to query an index and upload, merge, or delete documents.", "version": "2019-05-06", "x-ms-code-generation-settings": { "useDateTimeOffset": true, @@ -80,7 +80,7 @@ "$ref": "./examples/SearchIndexSearchDocumentsGet.json" } }, - "description": "Searches for documents in the Azure Search index.", + "description": "Searches for documents in the index.", "parameters": [ { "name": "search", @@ -312,7 +312,7 @@ "$ref": "./examples/SearchIndexSearchDocumentsPost.json" } }, - "description": "Searches for documents in the Azure Search index.", + "description": "Searches for documents in the index.", "parameters": [ { "name": "searchRequest", @@ -356,7 +356,7 @@ "$ref": "./examples/SearchIndexGetDocument.json" } }, - "description": "Retrieves a document from the Azure Search index.", + "description": "Retrieves a document from the index.", "parameters": [ { "name": "key", @@ -406,7 +406,7 @@ "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" } }, - "description": "Suggests documents in the Azure Search index that match the given partial query text.", + "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { "name": "search", @@ -550,7 +550,7 @@ "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" } }, - "description": "Suggests documents in the Azure Search index that match the given partial query text.", + "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { "name": "suggestRequest", @@ -593,7 +593,7 @@ "$ref": "./examples/SearchIndexIndexDocuments.json" } }, - "description": "Sends a batch of document write actions to the Azure Search index.", + "description": "Sends a batch of document write actions to the index.", "parameters": [ { "name": "batch", @@ -642,7 +642,7 @@ "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" } }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the Azure Search index.", + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", "parameters": [ { "$ref": "#/parameters/ClientRequestIdParameter" @@ -780,7 +780,7 @@ "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" } }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the Azure Search index.", + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", "parameters": [ { "$ref": "#/parameters/ClientRequestIdParameter" @@ -831,7 +831,7 @@ "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." } }, - "description": "Response containing suggestion query results from an Azure Search index." + "description": "Response containing suggestion query results from an index." }, "SuggestResult": { "properties": { @@ -864,7 +864,7 @@ "format": "int64", "readOnly": true, "x-ms-client-name": "Count", - "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Search can't return all the requested documents in a single Search response." + "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." }, "@search.coverage": { "type": "number", @@ -889,7 +889,7 @@ "$ref": "#/definitions/SearchRequest", "readOnly": true, "x-ms-client-name": "NextPageParameters", - "description": "Continuation JSON payload returned when Azure Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." + "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." }, "value": { "type": "array", @@ -904,10 +904,10 @@ "type": "string", "readOnly": true, "x-ms-client-name": "NextLink", - "description": "Continuation URL returned when Azure Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." + "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." } }, - "description": "Response containing search results from an Azure Search index." + "description": "Response containing search results from an index." }, "SearchResult": { "properties": { @@ -949,7 +949,7 @@ "required": [ "value" ], - "description": "Contains a batch of document write actions to send to the Azure Search index." + "description": "Contains a batch of document write actions to send to the index." }, "IndexAction": { "properties": { @@ -1310,7 +1310,7 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": true, - "description": "The name of the Azure Search service.", + "description": "The name of the search service.", "x-ms-parameter-location": "client" }, "SearchDnsSuffixParameter": { @@ -1320,7 +1320,7 @@ "type": "string", "default": "search.windows.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the Azure Search service. The default is search.windows.net.", + "description": "The DNS suffix of the search service. The default is search.windows.net.", "x-ms-parameter-location": "client" }, "IndexNameParameter": { @@ -1329,7 +1329,7 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": false, - "description": "The name of the Azure Search index.", + "description": "The name of the index.", "x-ms-parameter-location": "client" } } diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json index c6d09b648205..4fe2600f2036 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "SearchServiceClient", - "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on an Azure Search service.", + "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", "version": "2019-05-06", "x-ms-code-generation-settings": { "useDateTimeOffset": true @@ -38,7 +38,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" } }, - "description": "Creates a new Azure Search datasource or updates a datasource if it already exists.", + "description": "Creates a new datasource or updates a datasource if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" }, @@ -101,7 +101,7 @@ "$ref": "./examples/SearchServiceDeleteDataSource.json" } }, - "description": "Deletes an Azure Search datasource.", + "description": "Deletes a datasource.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" }, @@ -146,7 +146,7 @@ "$ref": "./examples/SearchServiceGetDataSource.json" } }, - "description": "Retrieves a datasource definition from Azure Search.", + "description": "Retrieves a datasource definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" }, @@ -187,7 +187,7 @@ "$ref": "./examples/SearchServiceListDataSources.json" } }, - "description": "Lists all datasources available for an Azure Search service.", + "description": "Lists all datasources available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" }, @@ -226,7 +226,7 @@ "$ref": "./examples/SearchServiceCreateDataSource.json" } }, - "description": "Creates a new Azure Search datasource.", + "description": "Creates a new datasource.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" }, @@ -269,7 +269,7 @@ "$ref": "./examples/SearchServiceResetIndexer.json" } }, - "description": "Resets the change tracking state associated with an Azure Search indexer.", + "description": "Resets the change tracking state associated with an indexer.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" }, @@ -307,7 +307,7 @@ "$ref": "./examples/SearchServiceRunIndexer.json" } }, - "description": "Runs an Azure Search indexer on-demand.", + "description": "Runs an indexer on-demand.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" }, @@ -345,7 +345,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" } }, - "description": "Creates a new Azure Search indexer or updates an indexer if it already exists.", + "description": "Creates a new indexer or updates an indexer if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" }, @@ -408,7 +408,7 @@ "$ref": "./examples/SearchServiceDeleteIndexer.json" } }, - "description": "Deletes an Azure Search indexer.", + "description": "Deletes an indexer.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" }, @@ -453,7 +453,7 @@ "$ref": "./examples/SearchServiceGetIndexer.json" } }, - "description": "Retrieves an indexer definition from Azure Search.", + "description": "Retrieves an indexer definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" }, @@ -494,7 +494,7 @@ "$ref": "./examples/SearchServiceListIndexers.json" } }, - "description": "Lists all indexers available for an Azure Search service.", + "description": "Lists all indexers available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" }, @@ -533,7 +533,7 @@ "$ref": "./examples/SearchServiceCreateIndexer.json" } }, - "description": "Creates a new Azure Search indexer.", + "description": "Creates a new indexer.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" }, @@ -617,7 +617,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" } }, - "description": "Creates a new cognitive skillset in an Azure Search service or updates the skillset if it already exists.", + "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" }, @@ -636,7 +636,7 @@ "schema": { "$ref": "#/definitions/Skillset" }, - "description": "The skillset containing one or more cognitive skills to create or update in an Azure Search service." + "description": "The skillset containing one or more skills to create or update in a search service." }, { "$ref": "#/parameters/ClientRequestIdParameter" @@ -674,7 +674,7 @@ "$ref": "./examples/SearchServiceDeleteSkillset.json" } }, - "description": "Deletes a cognitive skillset in an Azure Search service.", + "description": "Deletes a skillset in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" }, @@ -713,7 +713,7 @@ "$ref": "./examples/SearchServiceGetSkillset.json" } }, - "description": "Retrieves a cognitive skillset in an Azure Search service.", + "description": "Retrieves a skillset in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" }, @@ -754,7 +754,7 @@ "$ref": "./examples/SearchServiceListSkillsets.json" } }, - "description": "List all cognitive skillsets in an Azure Search service.", + "description": "List all skillsets in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" }, @@ -793,7 +793,7 @@ "$ref": "./examples/SearchServiceCreateSkillset.json" } }, - "description": "Creates a new cognitive skillset in an Azure Search service.", + "description": "Creates a new skillset in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" }, @@ -805,7 +805,7 @@ "schema": { "$ref": "#/definitions/Skillset" }, - "description": "The skillset containing one or more cognitive skills to create in an Azure Search service." + "description": "The skillset containing one or more skills to create in a search service." }, { "$ref": "#/parameters/ClientRequestIdParameter" @@ -836,7 +836,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" } }, - "description": "Creates a new Azure Search synonym map or updates a synonym map if it already exists.", + "description": "Creates a new synonym map or updates a synonym map if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" }, @@ -899,7 +899,7 @@ "$ref": "./examples/SearchServiceDeleteSynonymMap.json" } }, - "description": "Deletes an Azure Search synonym map.", + "description": "Deletes a synonym map.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" }, @@ -944,7 +944,7 @@ "$ref": "./examples/SearchServiceGetSynonymMap.json" } }, - "description": "Retrieves a synonym map definition from Azure Search.", + "description": "Retrieves a synonym map definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" }, @@ -985,7 +985,7 @@ "$ref": "./examples/SearchServiceListSynonymMaps.json" } }, - "description": "Lists all synonym maps available for an Azure Search service.", + "description": "Lists all synonym maps available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" }, @@ -1024,7 +1024,7 @@ "$ref": "./examples/SearchServiceCreateSynonymMap.json" } }, - "description": "Creates a new Azure Search synonym map.", + "description": "Creates a new synonym map.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" }, @@ -1067,7 +1067,7 @@ "$ref": "./examples/SearchServiceCreateIndex.json" } }, - "description": "Creates a new Azure Search index.", + "description": "Creates a new search index.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" }, @@ -1108,7 +1108,7 @@ "$ref": "./examples/SearchServiceListIndexes.json" } }, - "description": "Lists all indexes available for an Azure Search service.", + "description": "Lists all indexes available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" }, @@ -1149,7 +1149,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" } }, - "description": "Creates a new Azure Search index or updates an index if it already exists.", + "description": "Creates a new search index or updates an index if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" }, @@ -1219,7 +1219,7 @@ "$ref": "./examples/SearchServiceDeleteIndex.json" } }, - "description": "Deletes an Azure Search index and all the documents it contains.", + "description": "Deletes a search index and all the documents it contains.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" }, @@ -1264,7 +1264,7 @@ "$ref": "./examples/SearchServiceGetIndex.json" } }, - "description": "Retrieves an index definition from Azure Search.", + "description": "Retrieves an index definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" }, @@ -1396,7 +1396,7 @@ "$ref": "./examples/SearchServiceGetServiceStatistics.json" } }, - "description": "Gets service level statistics for an Azure Search service.", + "description": "Gets service level statistics for a search service.", "parameters": [ { "$ref": "#/parameters/ClientRequestIdParameter" @@ -1595,7 +1595,7 @@ "name": "AnalyzerName", "modelAsString": false }, - "description": "Defines the names of all text analyzers supported by Azure Search.", + "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" } @@ -1621,7 +1621,7 @@ "name": "TokenizerName", "modelAsString": false }, - "description": "Defines the names of all tokenizers supported by Azure Search.", + "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -1668,7 +1668,7 @@ "name": "TokenFilterName", "modelAsString": false }, - "description": "Defines the names of all token filters supported by Azure Search.", + "description": "Defines the names of all token filters supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -1682,7 +1682,7 @@ "name": "CharFilterName", "modelAsString": false }, - "description": "Defines the names of all character filters supported by Azure Search.", + "description": "Defines the names of all character filters supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -1724,7 +1724,7 @@ "name": "DataType", "modelAsString": false }, - "description": "Defines the data type of a field in an Azure Search index." + "description": "Defines the data type of a field in a search index." }, "Analyzer": { "discriminator": "@odata.type", @@ -3528,7 +3528,7 @@ "name": "DataSourceType", "modelAsString": false }, - "description": "Defines the type of an Azure Search datasource." + "description": "Defines the type of a datasource." }, "DataSource": { "properties": { @@ -3575,7 +3575,7 @@ "credentials", "container" ], - "description": "Represents a datasource definition in Azure Search, which can be used to configure an indexer." + "description": "Represents a datasource definition, which can be used to configure an indexer." }, "DataSourceListResult": { "properties": { @@ -3708,7 +3708,7 @@ }, "skillsetName": { "type": "string", - "description": "The name of the cognitive skillset executing with this indexer." + "description": "The name of the skillset executing with this indexer." }, "targetIndexName": { "type": "string", @@ -3762,7 +3762,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" }, - "description": "Represents an Azure Search indexer." + "description": "Represents an indexer." }, "IndexerListResult": { "properties": { @@ -4017,7 +4017,7 @@ }, "searchable": { "type": "boolean", - "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." + "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." }, "filterable": { "type": "boolean", @@ -4025,7 +4025,7 @@ }, "sortable": { "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." + "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." }, "facetable": { "type": "boolean", @@ -4077,7 +4077,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" }, - "description": "Represents a field in an index definition in Azure Search, which describes the name, data type, and search behavior of a field." + "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." }, "TextWeights": { "properties": { @@ -4326,7 +4326,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" }, - "description": "Defines parameters for an Azure Search index that influence scoring in search queries." + "description": "Defines parameters for a search index that influence scoring in search queries." }, "ScoringFunctionAggregation": { "type": "string", @@ -4485,7 +4485,7 @@ "name", "fields" ], - "description": "Represents an index definition in Azure Search, which describes the fields and search behavior of an index." + "description": "Represents a search index definition, which describes the fields and search behavior of an index." }, "IndexGetStatisticsResult": { "properties": { @@ -4555,7 +4555,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" }, - "description": "A list of cognitive skills." + "description": "A list of skills." }, "CognitiveServices": { "discriminator": "@odata.type", @@ -4628,7 +4628,7 @@ "items": { "$ref": "#/definitions/OutputFieldMappingEntry" }, - "description": "The output of a skill is either a field in an Azure Search index, or a value that can be consumed as an input by another skill." + "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." } }, "required": [ @@ -5393,7 +5393,7 @@ "format", "synonyms" ], - "description": "Represents a synonym map definition in Azure Search." + "description": "Represents a synonym map definition." }, "SynonymMapListResult": { "properties": { @@ -5564,7 +5564,7 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": true, - "description": "The name of the Azure Search service.", + "description": "The name of the search service.", "x-ms-parameter-location": "client" }, "SearchDnsSuffixParameter": { @@ -5574,7 +5574,7 @@ "type": "string", "default": "search.windows.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the Azure Search service. The default is search.windows.net.", + "description": "The DNS suffix of the search service. The default is search.windows.net.", "x-ms-parameter-location": "client" } } diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json index 37a5f4f87bbc..cffd68fd895c 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "SearchServiceClient", - "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on an Azure Search service.", + "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", "version": "2019-05-06", "x-ms-code-generation-settings": { "useDateTimeOffset": true @@ -38,7 +38,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" } }, - "description": "Creates a new Azure Search datasource or updates a datasource if it already exists.", + "description": "Creates a new datasource or updates a datasource if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" }, @@ -101,7 +101,7 @@ "$ref": "./examples/SearchServiceDeleteDataSource.json" } }, - "description": "Deletes an Azure Search datasource.", + "description": "Deletes a datasource.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" }, @@ -146,7 +146,7 @@ "$ref": "./examples/SearchServiceGetDataSource.json" } }, - "description": "Retrieves a datasource definition from Azure Search.", + "description": "Retrieves a datasource definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" }, @@ -187,7 +187,7 @@ "$ref": "./examples/SearchServiceListDataSources.json" } }, - "description": "Lists all datasources available for an Azure Search service.", + "description": "Lists all datasources available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" }, @@ -219,7 +219,7 @@ "$ref": "./examples/SearchServiceCreateDataSource.json" } }, - "description": "Creates a new Azure Search datasource.", + "description": "Creates a new datasource.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" }, @@ -262,7 +262,7 @@ "$ref": "./examples/SearchServiceResetIndexer.json" } }, - "description": "Resets the change tracking state associated with an Azure Search indexer.", + "description": "Resets the change tracking state associated with an indexer.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" }, @@ -300,7 +300,7 @@ "$ref": "./examples/SearchServiceRunIndexer.json" } }, - "description": "Runs an Azure Search indexer on-demand.", + "description": "Runs an indexer on-demand.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" }, @@ -338,7 +338,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" } }, - "description": "Creates a new Azure Search indexer or updates an indexer if it already exists.", + "description": "Creates a new indexer or updates an indexer if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" }, @@ -401,7 +401,7 @@ "$ref": "./examples/SearchServiceDeleteIndexer.json" } }, - "description": "Deletes an Azure Search indexer.", + "description": "Deletes an indexer.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" }, @@ -446,7 +446,7 @@ "$ref": "./examples/SearchServiceGetIndexer.json" } }, - "description": "Retrieves an indexer definition from Azure Search.", + "description": "Retrieves an indexer definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" }, @@ -487,7 +487,7 @@ "$ref": "./examples/SearchServiceListIndexers.json" } }, - "description": "Lists all indexers available for an Azure Search service.", + "description": "Lists all indexers available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" }, @@ -519,7 +519,7 @@ "$ref": "./examples/SearchServiceCreateIndexer.json" } }, - "description": "Creates a new Azure Search indexer.", + "description": "Creates a new indexer.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" }, @@ -603,7 +603,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" } }, - "description": "Creates a new cognitive skillset in an Azure Search service or updates the skillset if it already exists.", + "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" }, @@ -622,7 +622,7 @@ "schema": { "$ref": "#/definitions/Skillset" }, - "description": "The skillset containing one or more cognitive skills to create or update in an Azure Search service." + "description": "The skillset containing one or more skills to create or update in a search service." }, { "$ref": "#/parameters/ClientRequestIdParameter" @@ -660,7 +660,7 @@ "$ref": "./examples/SearchServiceDeleteSkillset.json" } }, - "description": "Deletes a cognitive skillset in an Azure Search service.", + "description": "Deletes a skillset in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" }, @@ -699,7 +699,7 @@ "$ref": "./examples/SearchServiceGetSkillset.json" } }, - "description": "Retrieves a cognitive skillset in an Azure Search service.", + "description": "Retrieves a skillset in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" }, @@ -740,7 +740,7 @@ "$ref": "./examples/SearchServiceListSkillsets.json" } }, - "description": "List all cognitive skillsets in an Azure Search service.", + "description": "List all skillsets in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" }, @@ -772,7 +772,7 @@ "$ref": "./examples/SearchServiceCreateSkillset.json" } }, - "description": "Creates a new cognitive skillset in an Azure Search service.", + "description": "Creates a new skillset in a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" }, @@ -784,7 +784,7 @@ "schema": { "$ref": "#/definitions/Skillset" }, - "description": "The skillset containing one or more cognitive skills to create in an Azure Search service." + "description": "The skillset containing one or more skills to create in a search service." }, { "$ref": "#/parameters/ClientRequestIdParameter" @@ -815,7 +815,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" } }, - "description": "Creates a new Azure Search synonym map or updates a synonym map if it already exists.", + "description": "Creates a new synonym map or updates a synonym map if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" }, @@ -878,7 +878,7 @@ "$ref": "./examples/SearchServiceDeleteSynonymMap.json" } }, - "description": "Deletes an Azure Search synonym map.", + "description": "Deletes a synonym map.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" }, @@ -923,7 +923,7 @@ "$ref": "./examples/SearchServiceGetSynonymMap.json" } }, - "description": "Retrieves a synonym map definition from Azure Search.", + "description": "Retrieves a synonym map definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" }, @@ -964,7 +964,7 @@ "$ref": "./examples/SearchServiceListSynonymMaps.json" } }, - "description": "Lists all synonym maps available for an Azure Search service.", + "description": "Lists all synonym maps available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" }, @@ -996,7 +996,7 @@ "$ref": "./examples/SearchServiceCreateSynonymMap.json" } }, - "description": "Creates a new Azure Search synonym map.", + "description": "Creates a new synonym map.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" }, @@ -1039,7 +1039,7 @@ "$ref": "./examples/SearchServiceCreateIndex.json" } }, - "description": "Creates a new Azure Search index.", + "description": "Creates a new search index.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" }, @@ -1080,7 +1080,7 @@ "$ref": "./examples/SearchServiceListIndexes.json" } }, - "description": "Lists all indexes available for an Azure Search service.", + "description": "Lists all indexes available for a search service.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" }, @@ -1121,7 +1121,7 @@ "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" } }, - "description": "Creates a new Azure Search index or updates an index if it already exists.", + "description": "Creates a new search index or updates an index if it already exists.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" }, @@ -1191,7 +1191,7 @@ "$ref": "./examples/SearchServiceDeleteIndex.json" } }, - "description": "Deletes an Azure Search index and all the documents it contains.", + "description": "Deletes a search index and all the documents it contains.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" }, @@ -1236,7 +1236,7 @@ "$ref": "./examples/SearchServiceGetIndex.json" } }, - "description": "Retrieves an index definition from Azure Search.", + "description": "Retrieves an index definition.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" }, @@ -1368,7 +1368,7 @@ "$ref": "./examples/SearchServiceGetServiceStatistics.json" } }, - "description": "Gets service level statistics for an Azure Search service.", + "description": "Gets service level statistics for a search service.", "parameters": [ { "$ref": "#/parameters/ClientRequestIdParameter" @@ -1567,7 +1567,7 @@ "name": "AnalyzerName", "modelAsString": false }, - "description": "Defines the names of all text analyzers supported by Azure Search.", + "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" } @@ -1593,7 +1593,7 @@ "name": "TokenizerName", "modelAsString": false }, - "description": "Defines the names of all tokenizers supported by Azure Search.", + "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -1640,7 +1640,7 @@ "name": "TokenFilterName", "modelAsString": false }, - "description": "Defines the names of all token filters supported by Azure Search.", + "description": "Defines the names of all token filters supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -1654,7 +1654,7 @@ "name": "CharFilterName", "modelAsString": false }, - "description": "Defines the names of all character filters supported by Azure Search.", + "description": "Defines the names of all character filters supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -1696,7 +1696,7 @@ "name": "DataType", "modelAsString": false }, - "description": "Defines the data type of a field in an Azure Search index." + "description": "Defines the data type of a field in a search index." }, "Analyzer": { "discriminator": "@odata.type", @@ -3500,7 +3500,7 @@ "name": "DataSourceType", "modelAsString": false }, - "description": "Defines the type of an Azure Search datasource." + "description": "Defines the type of a datasource." }, "DataSource": { "properties": { @@ -3547,7 +3547,7 @@ "credentials", "container" ], - "description": "Represents a datasource definition in Azure Search, which can be used to configure an indexer." + "description": "Represents a datasource definition, which can be used to configure an indexer." }, "DataSourceListResult": { "properties": { @@ -3680,7 +3680,7 @@ }, "skillsetName": { "type": "string", - "description": "The name of the cognitive skillset executing with this indexer." + "description": "The name of the skillset executing with this indexer." }, "targetIndexName": { "type": "string", @@ -3734,7 +3734,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" }, - "description": "Represents an Azure Search indexer." + "description": "Represents an indexer." }, "IndexerListResult": { "properties": { @@ -3989,7 +3989,7 @@ }, "searchable": { "type": "boolean", - "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." + "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." }, "filterable": { "type": "boolean", @@ -3997,7 +3997,7 @@ }, "sortable": { "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." + "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." }, "facetable": { "type": "boolean", @@ -4049,7 +4049,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" }, - "description": "Represents a field in an index definition in Azure Search, which describes the name, data type, and search behavior of a field." + "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." }, "TextWeights": { "properties": { @@ -4298,7 +4298,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" }, - "description": "Defines parameters for an Azure Search index that influence scoring in search queries." + "description": "Defines parameters for a search index that influence scoring in search queries." }, "ScoringFunctionAggregation": { "type": "string", @@ -4457,7 +4457,7 @@ "name", "fields" ], - "description": "Represents an index definition in Azure Search, which describes the fields and search behavior of an index." + "description": "Represents a search index definition, which describes the fields and search behavior of an index." }, "IndexGetStatisticsResult": { "properties": { @@ -4527,7 +4527,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" }, - "description": "A list of cognitive skills." + "description": "A list of skills." }, "CognitiveServices": { "discriminator": "@odata.type", @@ -4600,7 +4600,7 @@ "items": { "$ref": "#/definitions/OutputFieldMappingEntry" }, - "description": "The output of a skill is either a field in an Azure Search index, or a value that can be consumed as an input by another skill." + "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." } }, "required": [ @@ -5365,7 +5365,7 @@ "format", "synonyms" ], - "description": "Represents a synonym map definition in Azure Search." + "description": "Represents a synonym map definition." }, "SynonymMapListResult": { "properties": { @@ -5536,7 +5536,7 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": true, - "description": "The name of the Azure Search service.", + "description": "The name of the search service.", "x-ms-parameter-location": "client" }, "SearchDnsSuffixParameter": { @@ -5546,7 +5546,7 @@ "type": "string", "default": "search.windows.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the Azure Search service. The default is search.windows.net.", + "description": "The DNS suffix of the search service. The default is search.windows.net.", "x-ms-parameter-location": "client" } } From f243746f4280f55c2b309c03acb62c78ec6575da Mon Sep 17 00:00:00 2001 From: farehar Date: Mon, 21 Oct 2019 17:29:28 -0700 Subject: [PATCH 39/54] Add Hybrid RP rest api spec (#7487) * Hybrid RP swagger * Addressed feedback * fix typo * fix build issues * fix validation issues * fix validation errors * fix errors * fix errors * fix errors * remove 204 return codes * updated examplese --- .../preview/2019-03-18/HybridCompute.json | 789 ++++++++++ .../preview/2019-08-02/HybridCompute.json | 1270 +++++++++++++++++ .../2019-08-02/examples/GETExtension.json | 41 + .../2019-08-02/examples/LISTExtension.json | 45 + .../examples/Machines_CreateOrUpdate.json | 51 + .../2019-08-02/examples/Machines_Delete.json | 13 + .../2019-08-02/examples/Machines_Get.json | 41 + .../Machines_ListByResourceGroup.json | 22 + .../examples/Machines_ListBySubscription.json | 21 + .../examples/Machines_Reconnect.json | 51 + .../2019-08-02/examples/Machines_Update.json | 49 + .../2019-08-02/examples/PUTExtension.json | 67 + .../2019-08-02/examples/UpdateExtension.json | 54 + .../hybridcompute/resource-manager/readme.md | 183 +++ 14 files changed, 2697 insertions(+) create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json create mode 100644 specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json create mode 100644 specification/hybridcompute/resource-manager/readme.md diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json new file mode 100644 index 000000000000..7243fe2f0b19 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json @@ -0,0 +1,789 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2019-03-18-preview" + }, + "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.HybridCompute/machines/{name}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/reconnect": { + "post": { + "tags": [ + "machines" + ], + "operationId": "Machines_Reconnect", + "description": "The operation to reconnect a hybrid machine resource to its identity in Azure.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineReconnect" + }, + "description": "Parameters supplied to the Reconnect hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {}, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {}, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "MachineProperties": { + "properties": { + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": false + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "physicalLocation": { + "type": "string", + "description": "Resource's Physical Location" + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineReconnectProperties": { + "properties": { + "vmId": { + "type": "string", + "description": "Specifies the hybrid machine unique ID." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding." + } + }, + "description": "Describes the properties required to reconnect a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "physicalLocation": { + "type": "string", + "description": "Resource's Physical Location" + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/Identity", + "description": "Hybrid Compute Machine Managed Identity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineReconnect": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineReconnectProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "description": "Describes a hybrid machine reconnect." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "Resource": { + "description": "The Resource model definition.", + "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", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "identity": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/Identity", + "description": "Hybrid Compute Machine Managed Identity" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "ErrorDetail": { + "title": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error's code.", + "type": "string" + }, + "message": { + "description": "A human readable error message.", + "type": "string" + }, + "target": { + "description": "Indicates which property in the request is responsible for the error.", + "type": "string" + }, + "details": { + "description": "Additional error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + }, + "required": [ + "code", + "message" + ] + }, + "ErrorResponse": { + "title": "Error response.", + "description": "Contains details when the response code indicates an error.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "#/definitions/ErrorDetail" + } + }, + "required": [ + "error" + ] + }, + "Identity": { + "title": "Managed Identity.", + "type": "object", + "properties": { + "type": { + "description": "The identity type.", + "type": "string" + }, + "principalId": { + "readOnly": true, + "description": "The identity's principal id.", + "type": "string" + }, + "tenantId": { + "readOnly": true, + "description": "The identity's tenant id.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json new file mode 100644 index 000000000000..42cdd6fec784 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json @@ -0,0 +1,1270 @@ +{ + "swagger":"2.0", + "info":{ + "title":"HybridComputeManagementClient", + "description":"The Hybrid Compute Management Client.", + "version":"2019-08-02-preview" + }, + "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.HybridCompute/machines/{name}":{ + "put":{ + "tags":[ + "machines" + ], + "operationId":"Machines_CreateOrUpdate", + "description":"The operation to create or update a hybrid machine resource identity in Azure.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/Machine" + }, + "description":"Parameters supplied to the Create hybrid machine operation." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Update", + "description":"The operation to update a hybrid machine.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineUpdate" + }, + "description":"Parameters supplied to the Update hybrid machine operation." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Delete", + "description":"The operation to remove a hybrid machine identity in Azure.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + } + ], + "responses":{ + "200":{ + "description":"OK" + }, + "204":{ + "description":"No Content" + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Machine": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Get", + "description":"Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"$expand", + "in":"query", + "required":false, + "type":"string", + "description":"The expand expression to apply on the operation.", + "enum":[ + "instanceView" + ], + "x-ms-enum":{ + "name":"InstanceViewTypes", + "modelAsString":false + } + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/reconnect":{ + "post":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Reconnect", + "description":"The operation to reconnect a hybrid machine resource to its identity in Azure.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineReconnect" + }, + "description":"Parameters supplied to the Reconnect hybrid machine operation." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Reconnect a Machine": { + "$ref": "./examples/Machines_Reconnect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines":{ + "get":{ + "tags":[ + "machines" + ], + "operationId":"Machines_ListByResourceGroup", + "description":"Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineListResult" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines":{ + "get":{ + "tags":[ + "machines" + ], + "operationId":"Machines_ListBySubscription", + "description":"Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineListResult" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/extensions/{extensionName}":{ + "put":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_CreateOrUpdate", + "description":"The operation to create or update the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine where the extension should be created or updated." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "name":"extensionParameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineExtension" + }, + "description":"Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtension" + } + }, + "202":{ + "description":"HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation":true + }, + "patch":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_Update", + "description":"The operation to create or update the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine where the extension should be created or updated." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "name":"extensionParameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineExtensionUpdate" + }, + "description":"Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtension" + } + }, + "202":{ + "description":"Accepted" + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation":true + }, + "delete":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_Delete", + "description":"The operation to delete the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine where the extension should be deleted." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK" + }, + "202":{ + "description":"Accepted" + }, + "204":{ + "description":"No Content" + } + }, + "x-ms-long-running-operation":true, + "x-ms-examples":{ + } + }, + "get":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_Get", + "description":"The operation to get the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine containing the extension." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtension" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/extensions":{ + "get":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_List", + "description":"The operation to get all extensions of a non-Azure machine", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine containing the extension." + }, + { + "name":"$expand", + "in":"query", + "required":false, + "type":"string", + "description":"The expand expression to apply on the operation." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtensionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/providers/Microsoft.HybridCompute/operations":{ + "get":{ + "tags":[ + "operations" + ], + "operationId":"Operations_List", + "description":"Gets a list of hybrid compute operations.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/OperationListResult" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable":{ + "nextLinkName":null + } + } + } + }, + "definitions":{ + "OperationListResult":{ + "properties":{ + "value":{ + "type":"array", + "readOnly":true, + "items":{ + "$ref":"#/definitions/OperationValue" + }, + "description":"The list of compute operations" + } + }, + "description":"The List Compute Operation operation response." + }, + "OperationValue":{ + "properties":{ + "origin":{ + "type":"string", + "readOnly":true, + "description":"The origin of the compute operation." + }, + "name":{ + "type":"string", + "readOnly":true, + "description":"The name of the compute operation." + }, + "display":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/OperationValueDisplay", + "description":"Display properties" + } + }, + "description":"Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay":{ + "properties":{ + "operation":{ + "type":"string", + "readOnly":true, + "description":"The display name of the compute operation." + }, + "resource":{ + "type":"string", + "readOnly":true, + "description":"The display name of the resource the operation applies to." + }, + "description":{ + "type":"string", + "readOnly":true, + "description":"The description of the operation." + }, + "provider":{ + "type":"string", + "readOnly":true, + "description":"The resource provider for the operation." + } + }, + "description":"Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile":{ + "readOnly":true, + "properties":{ + "computerName":{ + "type":"string", + "readOnly":true, + "description":"Specifies the host OS name of the hybrid machine." + } + }, + "description":"Specifies the operating system settings for the hybrid machine." + }, + "MachineProperties":{ + "properties":{ + "osProfile":{ + "$ref":"#/definitions/OSProfile", + "description":"Specifies the operating system settings for the hybrid machine." + }, + "provisioningState":{ + "readOnly":true, + "type":"string", + "description":"The provisioning state, which only appears in the response." + }, + "status":{ + "readOnly":true, + "type":"string", + "description":"The status of the hybrid machine agent.", + "enum":[ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum":{ + "name":"StatusTypes", + "modelAsString":false + } + }, + "lastStatusChange":{ + "readOnly":true, + "type":"string", + "format":"date-time", + "description":"The time of the last status change." + }, + "errorDetails":{ + "readOnly":true, + "type":"array", + "items":{ + "$ref":"#/definitions/ErrorDetail" + }, + "description":"Details about the error state." + }, + "agentVersion":{ + "readOnly":true, + "type":"string", + "description":"The hybrid machine agent full version." + }, + "vmId":{ + "readOnly":true, + "type":"string", + "description":"Specifies the hybrid machine unique ID." + }, + "displayName":{ + "readOnly":true, + "type":"string", + "description":"Specifies the hybrid machine display name." + }, + "machineFqdn":{ + "readOnly":true, + "type":"string", + "description":"Specifies the hybrid machine FQDN." + }, + "physicalLocation":{ + "type":"string", + "description":"Resource's Physical Location" + }, + "clientPublicKey":{ + "type":"string", + "description":"Public Key that the client provides to be used during initial resource onboarding" + }, + "osName":{ + "readOnly":true, + "type":"string", + "description":"The Operating System running on the hybrid machine." + }, + "osVersion":{ + "readOnly":true, + "type":"string", + "description":"The version of Operating System running on the hybrid machine." + }, + "extensions":{ + "type":"array", + "items":{ + "$ref":"#/definitions/MachineExtensionInstanceView" + }, + "description":"Machine Extensions information" + } + }, + "description":"Describes the properties of a hybrid machine." + }, + "MachineReconnectProperties":{ + "properties":{ + "vmId":{ + "type":"string", + "description":"Specifies the hybrid machine unique ID." + }, + "clientPublicKey":{ + "type":"string", + "description":"Public Key that the client provides to be used during initial resource onboarding." + } + }, + "description":"Describes the properties required to reconnect a hybrid machine." + }, + "MachineUpdateProperties":{ + "properties":{ + "physicalLocation":{ + "type":"string", + "description":"Resource's Physical Location" + } + }, + "description":"Describes the ARM updatable properties of a hybrid machine." + }, + "Machine":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineProperties", + "description":"Hybrid Compute Machine properties" + } + }, + "allOf":[ + { + "$ref":"#/definitions/Resource" + } + ], + "description":"Describes a hybrid machine." + }, + "MachineUpdate":{ + "properties":{ + "identity":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/Identity", + "description":"Hybrid Compute Machine Managed Identity" + }, + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineUpdateProperties", + "description":"Hybrid Compute Machine properties" + } + }, + "allOf":[ + { + "$ref":"#/definitions/UpdateResource" + } + ], + "description":"Describes a hybrid machine Update." + }, + "MachineReconnect":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineReconnectProperties", + "description":"Hybrid Compute Machine properties" + } + }, + "description":"Describes a hybrid machine reconnect." + }, + "MachineListResult":{ + "properties":{ + "value":{ + "type":"array", + "items":{ + "$ref":"#/definitions/Machine" + }, + "description":"The list of hybrid machines." + }, + "nextLink":{ + "type":"string", + "description":"The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required":[ + "value" + ], + "description":"The List hybrid machine operation response." + }, + "Resource":{ + "description":"The Resource model definition.", + "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", + "x-ms-mutability":[ + "create", + "read" + ] + }, + "tags":{ + "type":"object", + "additionalProperties":{ + "type":"string" + }, + "description":"Resource tags" + }, + "identity":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/Identity", + "description":"Hybrid Compute Machine Managed Identity" + } + }, + "required":[ + "location" + ], + "x-ms-azure-resource":true + }, + "UpdateResource":{ + "description":"The Update Resource model definition.", + "properties":{ + "tags":{ + "type":"object", + "additionalProperties":{ + "type":"string" + }, + "description":"Resource tags" + } + } + }, + "ErrorDetail":{ + "title":"Error details.", + "type":"object", + "properties":{ + "code":{ + "description":"The error's code.", + "type":"string" + }, + "message":{ + "description":"A human readable error message.", + "type":"string" + }, + "target":{ + "description":"Indicates which property in the request is responsible for the error.", + "type":"string" + }, + "details":{ + "description":"Additional error details.", + "type":"array", + "items":{ + "$ref":"#/definitions/ErrorDetail" + } + } + }, + "required":[ + "code", + "message" + ] + }, + "ErrorResponse":{ + "title":"Error response.", + "description":"Contains details when the response code indicates an error.", + "type":"object", + "properties":{ + "error":{ + "description":"The error details.", + "$ref":"#/definitions/ErrorDetail" + } + }, + "required":[ + "error" + ] + }, + "Identity":{ + "title":"Managed Identity.", + "type":"object", + "properties":{ + "type":{ + "description":"The identity type.", + "type":"string" + }, + "principalId":{ + "readOnly":true, + "description":"The identity's principal id.", + "type":"string" + }, + "tenantId":{ + "readOnly":true, + "description":"The identity's tenant id.", + "type":"string" + } + } + }, + "MachineExtension":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineExtensionProperties", + "description":"Describes Machine Extension Properties." + } + }, + "allOf":[ + { + "$ref":"#/definitions/Resource" + } + ], + "description":"Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineExtensionUpdateProperties", + "description":"Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties":{ + "properties":{ + "forceUpdateTag":{ + "type":"string", + "description":"How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher":{ + "type":"string", + "description":"The name of the extension handler publisher." + }, + "type":{ + "type":"string", + "description":"Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion":{ + "type":"string", + "description":"Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion":{ + "type":"boolean", + "description":"Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings":{ + "type":"object", + "description":"Json formatted public settings for the extension." + }, + "protectedSettings":{ + "type":"object", + "description":"The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState":{ + "readOnly":true, + "type":"string", + "description":"The provisioning state, which only appears in the response." + }, + "instanceView":{ + "$ref":"#/definitions/MachineExtensionInstanceView", + "description":"The machine extension instance view." + } + }, + "description":"Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView":{ + "properties":{ + "name":{ + "type":"string", + "description":"The machine extension name." + }, + "type":{ + "type":"string", + "description":"Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion":{ + "type":"string", + "description":"Specifies the version of the script handler." + }, + "status":{ + "properties":{ + "code":{ + "type":"string", + "description":"The status code." + }, + "level":{ + "type":"string", + "description":"The level code.", + "enum":[ + "Info", + "Warning", + "Error" + ], + "x-ms-enum":{ + "name":"StatusLevelTypes", + "modelAsString":false + } + }, + "displayStatus":{ + "type":"string", + "description":"The short localizable label for the status." + }, + "message":{ + "type":"string", + "description":"The detailed status message, including for alerts and error messages." + }, + "time":{ + "type":"string", + "format":"date-time", + "description":"The time of the status." + } + }, + "description":"Instance view status." + } + }, + "description":"Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult":{ + "properties":{ + "value":{ + "type":"array", + "items":{ + "$ref":"#/definitions/MachineExtension" + }, + "description":"The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description":"Describes the Machine Extensions List Result." + } + }, + "parameters":{ + "SubscriptionIdParameter":{ + "name":"subscriptionId", + "in":"path", + "required":true, + "type":"string", + "description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter":{ + "name":"api-version", + "in":"query", + "required":true, + "type":"string", + "description":"Client Api Version." + } + } + } \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json new file mode 100644 index 000000000000..79cb2c875d27 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } + } \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json new file mode 100644 index 000000000000..36a2fe4ad836 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-13T17:18:57.405Z" + } + } + } + } + ], + "nextLink": "string" + } + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..123cd8f62b98 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02", + "parameters": "string", + "location": "eastus2euap", + "properties": { + "vmId": "string", + "physicalLocation": "redmond", + "clientPublicKey": "string" + }, + "identity": { + "Type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "string", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json new file mode 100644 index 000000000000..3f2fb9421e7c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02-preview" + }, + "responses": { + "200": { + }, + "204": { } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json new file mode 100644 index 000000000000..d59ae778ca80 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02-preview" + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "string", + "tags": { }, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "string", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..c4b3eccaaacb --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "string", + "name": "string", + "type": "string", + "location": "string" + } + ], + "nextLink": "string" + } + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..1358bfc3c944 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "string", + "name": "string", + "type": "string", + "location": "string" + } + ], + "nextLink": "string" + } + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json new file mode 100644 index 000000000000..52698205004d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02", + "location": "eastus2euap", + "parameters": "string", + "properties": { + "vmId": "string", + "physicalLocation": "redmond", + "clientPublicKey": "string" + }, + "identity": { + "Type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "string", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json new file mode 100644 index 000000000000..b76dae837072 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02", + "location": "eastus2euap", + "parameters": "string", + "properties": { + "physicalLocation": "newLocation" + }, + "identity": { + "Type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "string", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json new file mode 100644 index 000000000000..cde51ea1d8cf --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-08-02", + "extensionParameters": { + "location": "string", + "properties": { + "forceUpdateTag": "false", + "publisher": "Publisher1", + "type": "string", + "typeHandlerVersion": "1.0", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:36:46.620Z" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": { + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json new file mode 100644 index 000000000000..a4698159a7e5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-08-02", + "extensionParameters": { + "properties": { + "forceUpdateTag": "false", + "publisher": "Publisher1", + "type": "string", + "typeHandlerVersion": "1.0", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": { + } + } + } diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md new file mode 100644 index 000000000000..afaf5eebeb16 --- /dev/null +++ b/specification/hybridcompute/resource-manager/readme.md @@ -0,0 +1,183 @@ +# HybridCompute + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for HybridCompute RP. + + + +--- +## Getting Started +To build the SDK for HybridCompute, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the HybridCompute API. + +``` yaml +openapi-type: arm +tag: package-2019-08 +``` + +### Tag: package-2019-03 + +These settings apply only when `--tag=package-2019-03` is specified on the command line. + +``` yaml $(tag) == 'package-2019-03' +input-file: +- Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json +``` + +### Tag: package-2019-08 + +These settings apply only when `--tag=package-2019-08` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08' +input-file: +- Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json +``` + +--- +# Code Generation + + +--- +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.HybridCompute + output-folder: $(csharp-sdks-folder)/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated + clear-output-folder: true +directive: + - remove-operation: + - Machines_Reconnect + - Machines_CreateOrUpdate + - Machines_Update + - Machines_Delete +``` + +## PowerShell + +``` yaml $(powershell) +powershell: + namespace: Microsoft.Azure.Management.HybridCompute + output-folder: generated + clear-output-folder: true +directive: + - remove-operation: + - Machines_Reconnect + - Machines_CreateOrUpdate + - Machines_Update + - Machines_Delete +``` + + +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.hybridcompute + package-name: azure-mgmt-hybridcompute + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/hybridcompute/azure-mgmt-hybridcompute/azure/mgmt/hybridcompute +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-hybridcompute +directive: + - remove-operation: + - Machines_Reconnect + - Machines_CreateOrUpdate + - Machines_Update + - Machines_Delete +``` + +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true + namespace: hybridcompute +``` + + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-03 +``` + +### Tag: package-2019-03 and go + +These settings apply only when `--tag=package-2019-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2019-03' && $(go) +output-folder: $(go-sdk-folder)/services/preview/hybridcompute/mgmt/2019-03-18-preview/hybridcompute +``` + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.hybridcompute +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-hybridcompute +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-03 +``` + +### Tag: package-2019-03 and java + +These settings apply only when `--tag=package-2019-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.hybridcompute.v2019_03_18 + output-folder: $(azure-libraries-for-java-folder)/hybridcompute/resource-manager/v2019_03_18 + +regenerate-manager: true +generate-interface: true +``` From 931cb1af7ed342a7718366265b3c32ae7c94910f Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 22 Oct 2019 00:30:41 +0000 Subject: [PATCH 40/54] regenerated all-api-versions --- .../hybridcompute/resource-manager/readme.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md index afaf5eebeb16..0e698c02424f 100644 --- a/specification/hybridcompute/resource-manager/readme.md +++ b/specification/hybridcompute/resource-manager/readme.md @@ -181,3 +181,29 @@ java: regenerate-manager: true generate-interface: true ``` + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json + - $(this-folder)/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + From 144e1e790c0cab6f06bafae195879075e376341d Mon Sep 17 00:00:00 2001 From: Anton Evseev Date: Mon, 21 Oct 2019 18:29:23 -0700 Subject: [PATCH 41/54] Merge Network's October release branch into master (#7564) --- custom-words.txt | 1 + .../stable/2019-09-01/applicationGateway.json | 2822 ++++++++++ .../2019-09-01/applicationSecurityGroup.json | 406 ++ .../2019-09-01/availableDelegations.json | 178 + .../2019-09-01/availableServiceAliases.json | 171 + .../stable/2019-09-01/azureFirewall.json | 1014 ++++ .../2019-09-01/azureFirewallFqdnTag.json | 130 + .../stable/2019-09-01/bastionHost.json | 409 ++ .../2019-09-01/checkDnsAvailability.json | 96 + .../stable/2019-09-01/ddosCustomPolicy.json | 364 ++ .../stable/2019-09-01/ddosProtectionPlan.json | 436 ++ .../stable/2019-09-01/endpointService.json | 119 + ...tionGatewayAvailableRequestHeadersGet.json | 13 + ...ionGatewayAvailableResponseHeadersGet.json | 13 + ...ionGatewayAvailableServerVariablesGet.json | 13 + ...licationGatewayAvailableSslOptionsGet.json | 64 + ...ilableSslOptionsPredefinedPoliciesGet.json | 101 + ...vailableSslOptionsPredefinedPolicyGet.json | 48 + ...icationGatewayAvailableWafRuleSetsGet.json | 36 + .../ApplicationGatewayBackendHealthGet.json | 57 + .../ApplicationGatewayBackendHealthTest.json | 45 + .../examples/ApplicationGatewayCreate.json | 734 +++ .../examples/ApplicationGatewayDelete.json | 13 + .../examples/ApplicationGatewayGet.json | 254 + .../examples/ApplicationGatewayList.json | 125 + .../examples/ApplicationGatewayListAll.json | 124 + .../examples/ApplicationGatewayStart.json | 12 + .../examples/ApplicationGatewayStop.json | 12 + .../ApplicationGatewayUpdateTags.json | 148 + .../ApplicationSecurityGroupCreate.json | 38 + .../ApplicationSecurityGroupDelete.json | 13 + .../examples/ApplicationSecurityGroupGet.json | 22 + .../ApplicationSecurityGroupList.json | 35 + .../ApplicationSecurityGroupListAll.json | 34 + .../ApplicationSecurityGroupUpdateTags.json | 33 + .../AutoApprovedPrivateLinkServicesGet.json | 24 + ...edPrivateLinkServicesResourceGroupGet.json | 25 + .../AvailableDelegationsResourceGroupGet.json | 25 + .../AvailableDelegationsSubscriptionGet.json | 24 + .../AvailablePrivateEndpointTypesGet.json | 20 + ...ePrivateEndpointTypesResourceGroupGet.json | 21 + .../examples/AvailableServiceAliasesList.json | 27 + ...ableServiceAliasesListByResourceGroup.json | 28 + .../examples/AzureFirewallDelete.json | 13 + ...ureFirewallFqdnTagsListBySubscription.json | 28 + .../2019-09-01/examples/AzureFirewallGet.json | 176 + ...reFirewallGetWithAdditionalProperties.json | 179 + .../examples/AzureFirewallGetWithZones.json | 180 + .../AzureFirewallListByResourceGroup.json | 178 + .../AzureFirewallListBySubscription.json | 177 + .../2019-09-01/examples/AzureFirewallPut.json | 496 ++ .../examples/AzureFirewallPutInHub.json | 102 + ...reFirewallPutWithAdditionalProperties.json | 506 ++ .../examples/AzureFirewallPutWithZones.json | 508 ++ .../examples/AzureFirewallUpdateTags.json | 32 + .../examples/BastionHostDelete.json | 13 + .../2019-09-01/examples/BastionHostGet.json | 44 + .../BastionHostListByResourceGroup.json | 44 + .../BastionHostListBySubscription.json | 43 + .../2019-09-01/examples/BastionHostPut.json | 89 + .../examples/CheckDnsNameAvailability.json | 15 + .../CheckPrivateLinkServiceVisibility.json | 17 + ...eLinkServiceVisibilityByResourceGroup.json | 18 + .../examples/DdosCustomPolicyCreate.json | 58 + .../examples/DdosCustomPolicyDelete.json | 16 + .../examples/DdosCustomPolicyGet.json | 27 + .../examples/DdosCustomPolicyUpdateTags.json | 39 + .../examples/DdosProtectionPlanCreate.json | 40 + .../examples/DdosProtectionPlanDelete.json | 13 + .../examples/DdosProtectionPlanGet.json | 27 + .../examples/DdosProtectionPlanList.json | 45 + .../examples/DdosProtectionPlanListAll.json | 47 + .../DdosProtectionPlanUpdateTags.json | 33 + .../examples/DefaultSecurityRuleGet.json | 33 + .../examples/DefaultSecurityRuleList.json | 136 + .../examples/EndpointServicesList.json | 30 + .../ExpressRouteCircuitARPTableList.json | 25 + ...xpressRouteCircuitAuthorizationCreate.json | 36 + ...xpressRouteCircuitAuthorizationDelete.json | 14 + .../ExpressRouteCircuitAuthorizationGet.json | 24 + .../ExpressRouteCircuitAuthorizationList.json | 26 + .../ExpressRouteCircuitConnectionCreate.json | 63 + .../ExpressRouteCircuitConnectionDelete.json | 15 + .../ExpressRouteCircuitConnectionGet.json | 32 + .../ExpressRouteCircuitConnectionList.json | 50 + .../examples/ExpressRouteCircuitCreate.json | 84 + ...sRouteCircuitCreateOnExpressRoutePort.json | 79 + .../examples/ExpressRouteCircuitDelete.json | 13 + .../examples/ExpressRouteCircuitGet.json | 38 + ...xpressRouteCircuitListByResourceGroup.json | 91 + ...ExpressRouteCircuitListBySubscription.json | 90 + .../ExpressRouteCircuitPeeringCreate.json | 75 + .../ExpressRouteCircuitPeeringDelete.json | 14 + .../ExpressRouteCircuitPeeringGet.json | 61 + .../ExpressRouteCircuitPeeringList.json | 88 + .../ExpressRouteCircuitPeeringStats.json | 19 + .../ExpressRouteCircuitRouteTableList.json | 26 + ...ressRouteCircuitRouteTableSummaryList.json | 26 + .../examples/ExpressRouteCircuitStats.json | 18 + .../ExpressRouteCircuitUpdateTags.json | 48 + .../ExpressRouteConnectionCreate.json | 50 + .../ExpressRouteConnectionDelete.json | 14 + .../examples/ExpressRouteConnectionGet.json | 25 + .../examples/ExpressRouteConnectionList.json | 28 + ...sRouteCrossConnectionBgpPeeringCreate.json | 75 + ...sRouteCrossConnectionBgpPeeringDelete.json | 14 + ...ressRouteCrossConnectionBgpPeeringGet.json | 37 + ...essRouteCrossConnectionBgpPeeringList.json | 40 + .../ExpressRouteCrossConnectionGet.json | 32 + .../ExpressRouteCrossConnectionList.json | 33 + ...uteCrossConnectionListByResourceGroup.json | 34 + .../ExpressRouteCrossConnectionUpdate.json | 36 + ...ExpressRouteCrossConnectionUpdateTags.json | 41 + .../ExpressRouteCrossConnectionsArpTable.json | 25 + ...xpressRouteCrossConnectionsRouteTable.json | 33 + ...outeCrossConnectionsRouteTableSummary.json | 31 + .../examples/ExpressRouteGatewayCreate.json | 63 + .../examples/ExpressRouteGatewayDelete.json | 13 + .../examples/ExpressRouteGatewayGet.json | 25 + ...xpressRouteGatewayListByResourceGroup.json | 48 + ...ExpressRouteGatewayListBySubscription.json | 47 + .../examples/ExpressRouteLinkGet.json | 26 + .../examples/ExpressRouteLinkList.json | 42 + .../examples/ExpressRoutePortCreate.json | 112 + .../examples/ExpressRoutePortDelete.json | 13 + .../examples/ExpressRoutePortGet.json | 57 + .../examples/ExpressRoutePortList.json | 59 + .../ExpressRoutePortListByResourceGroup.json | 60 + .../examples/ExpressRoutePortUpdateLink.json | 120 + .../examples/ExpressRoutePortUpdateTags.json | 63 + .../ExpressRoutePortsLocationGet.json | 28 + .../ExpressRoutePortsLocationList.json | 26 + .../examples/ExpressRouteProviderList.json | 60 + .../examples/FirewallPolicyDelete.json | 13 + .../examples/FirewallPolicyGet.json | 32 + .../FirewallPolicyListByResourceGroup.json | 35 + .../FirewallPolicyListBySubscription.json | 34 + .../examples/FirewallPolicyPut.json | 69 + .../FirewallPolicyRuleGroupDelete.json | 14 + .../examples/FirewallPolicyRuleGroupGet.json | 50 + .../examples/FirewallPolicyRuleGroupList.json | 54 + .../examples/FirewallPolicyRuleGroupPut.json | 119 + ...alWanVpnServerConfigurationVpnProfile.json | 18 + .../GetVirtualWanVpnServerConfigurations.json | 20 + .../HubVirtualNetworkConnectionGet.json | 26 + .../HubVirtualNetworkConnectionList.json | 41 + .../examples/InboundNatRuleCreate.json | 66 + .../examples/InboundNatRuleDelete.json | 14 + .../examples/InboundNatRuleGet.json | 32 + .../examples/InboundNatRuleList.json | 54 + .../2019-09-01/examples/IpGroupsCreate.json | 67 + .../2019-09-01/examples/IpGroupsDelete.json | 13 + .../2019-09-01/examples/IpGroupsGet.json | 32 + .../examples/IpGroupsListByResourceGroup.json | 55 + .../examples/IpGroupsListBySubscription.json | 54 + .../examples/IpGroupsUpdateTags.json | 42 + .../LoadBalancerBackendAddressPoolGet.json | 32 + .../LoadBalancerBackendAddressPoolList.json | 35 + .../examples/LoadBalancerCreate.json | 339 ++ .../LoadBalancerCreateStandardSku.json | 339 ++ .../LoadBalancerCreateWithInboundNatPool.json | 180 + .../LoadBalancerCreateWithOutboundRules.json | 423 ++ .../examples/LoadBalancerCreateWithZones.json | 348 ++ .../examples/LoadBalancerDelete.json | 13 + ...oadBalancerFrontendIPConfigurationGet.json | 38 + ...adBalancerFrontendIPConfigurationList.json | 41 + .../2019-09-01/examples/LoadBalancerGet.json | 139 + .../2019-09-01/examples/LoadBalancerList.json | 161 + .../examples/LoadBalancerListAll.json | 160 + .../LoadBalancerLoadBalancingRuleGet.json | 38 + .../LoadBalancerLoadBalancingRuleList.json | 41 + ...oadBalancerNetworkInterfaceListSimple.json | 59 + .../LoadBalancerNetworkInterfaceListVmss.json | 112 + .../examples/LoadBalancerOutboundRuleGet.json | 34 + .../LoadBalancerOutboundRuleList.json | 37 + .../examples/LoadBalancerProbeGet.json | 32 + .../examples/LoadBalancerProbeList.json | 35 + .../examples/LoadBalancerUpdateTags.json | 132 + .../examples/LocalNetworkGatewayCreate.json | 59 + .../examples/LocalNetworkGatewayDelete.json | 13 + .../examples/LocalNetworkGatewayGet.json | 29 + .../examples/LocalNetworkGatewayList.json | 49 + .../LocalNetworkGatewayUpdateTags.json | 38 + .../examples/NatGatewayCreateOrUpdate.json | 118 + .../2019-09-01/examples/NatGatewayDelete.json | 13 + .../2019-09-01/examples/NatGatewayGet.json | 40 + .../2019-09-01/examples/NatGatewayList.json | 71 + .../examples/NatGatewayListAll.json | 70 + .../examples/NatGatewayUpdateTags.json | 50 + .../examples/NetworkInterfaceCreate.json | 101 + .../examples/NetworkInterfaceDelete.json | 13 + .../NetworkInterfaceEffectiveNSGList.json | 71 + ...tworkInterfaceEffectiveRouteTableList.json | 71 + .../examples/NetworkInterfaceGet.json | 55 + .../NetworkInterfaceIPConfigurationGet.json | 45 + .../NetworkInterfaceIPConfigurationList.json | 31 + .../examples/NetworkInterfaceList.json | 92 + .../examples/NetworkInterfaceListAll.json | 91 + .../NetworkInterfaceLoadBalancerList.json | 139 + ...etworkInterfaceTapConfigurationCreate.json | 46 + ...etworkInterfaceTapConfigurationDelete.json | 14 + .../NetworkInterfaceTapConfigurationGet.json | 25 + .../NetworkInterfaceTapConfigurationList.json | 28 + .../examples/NetworkInterfaceUpdateTags.json | 56 + .../NetworkProfileCreateConfigOnly.json | 110 + .../examples/NetworkProfileDelete.json | 13 + .../examples/NetworkProfileGetConfigOnly.json | 84 + .../NetworkProfileGetWithContainerNic.json | 203 + .../examples/NetworkProfileList.json | 97 + .../examples/NetworkProfileListAll.json | 84 + .../examples/NetworkProfileUpdateTags.json | 58 + .../examples/NetworkSecurityGroupCreate.json | 233 + .../NetworkSecurityGroupCreateWithRule.json | 282 + .../examples/NetworkSecurityGroupDelete.json | 13 + .../examples/NetworkSecurityGroupGet.json | 136 + .../examples/NetworkSecurityGroupList.json | 231 + .../examples/NetworkSecurityGroupListAll.json | 230 + .../NetworkSecurityGroupRuleCreate.json | 57 + .../NetworkSecurityGroupRuleDelete.json | 14 + .../examples/NetworkSecurityGroupRuleGet.json | 28 + .../NetworkSecurityGroupRuleList.json | 31 + .../NetworkSecurityGroupUpdateTags.json | 130 + ...tworkWatcherAvailableProvidersListGet.json | 68 + ...workWatcherAzureReachabilityReportGet.json | 82 + .../NetworkWatcherConnectivityCheck.json | 79 + .../examples/NetworkWatcherCreate.json | 40 + .../examples/NetworkWatcherDelete.json | 12 + .../NetworkWatcherFlowLogConfigure.json | 35 + .../NetworkWatcherFlowLogStatusQuery.json | 31 + .../examples/NetworkWatcherGet.json | 23 + .../examples/NetworkWatcherIpFlowVerify.json | 31 + .../examples/NetworkWatcherList.json | 37 + .../examples/NetworkWatcherListAll.json | 36 + ...WatcherNetworkConfigurationDiagnostic.json | 198 + .../examples/NetworkWatcherNextHopGet.json | 30 + .../NetworkWatcherPacketCaptureCreate.json | 56 + .../NetworkWatcherPacketCaptureDelete.json | 13 + .../NetworkWatcherPacketCaptureGet.json | 37 + ...etworkWatcherPacketCaptureQueryStatus.json | 31 + .../NetworkWatcherPacketCaptureStop.json | 13 + .../NetworkWatcherPacketCapturesList.json | 58 + .../NetworkWatcherSecurityGroupViewGet.json | 141 + .../examples/NetworkWatcherTopologyGet.json | 39 + .../NetworkWatcherTroubleshootGet.json | 71 + ...NetworkWatcherTroubleshootResultQuery.json | 67 + .../examples/NetworkWatcherUpdateTags.json | 32 + .../2019-09-01/examples/OperationList.json | 137 + .../examples/P2SVpnGatewayDelete.json | 13 + .../P2SVpnGatewayGenerateVpnProfile.json | 17 + .../2019-09-01/examples/P2SVpnGatewayGet.json | 53 + .../P2SVpnGatewayGetConnectionHealth.json | 54 + ...VpnGatewayGetConnectionHealthDetailed.json | 21 + .../examples/P2SVpnGatewayList.json | 97 + .../P2SVpnGatewayListByResourceGroup.json | 93 + .../2019-09-01/examples/P2SVpnGatewayPut.json | 118 + .../examples/P2SVpnGatewayUpdateTags.json | 61 + .../PeerExpressRouteCircuitConnectionGet.json | 32 + ...PeerExpressRouteCircuitConnectionList.json | 53 + .../examples/PrivateEndpointCreate.json | 98 + ...rivateEndpointCreateForManualApproval.json | 98 + .../examples/PrivateEndpointDelete.json | 13 + .../examples/PrivateEndpointGet.json | 46 + .../PrivateEndpointGetForManualApproval.json | 46 + .../examples/PrivateEndpointList.json | 83 + .../examples/PrivateEndpointListAll.json | 114 + .../examples/PrivateLinkServiceCreate.json | 155 + .../examples/PrivateLinkServiceDelete.json | 13 + ...erviceDeletePrivateEndpointConnection.json | 14 + .../examples/PrivateLinkServiceGet.json | 77 + ...nkServiceGetPrivateEndpointConnection.json | 25 + .../examples/PrivateLinkServiceList.json | 141 + .../examples/PrivateLinkServiceListAll.json | 142 + ...kServiceListPrivateEndpointConnection.json | 40 + ...erviceUpdatePrivateEndpointConnection.json | 37 + ...PublicIpAddressCreateCustomizedValues.json | 70 + .../PublicIpAddressCreateDefaults.json | 53 + .../examples/PublicIpAddressCreateDns.json | 60 + .../examples/PublicIpAddressDelete.json | 13 + .../examples/PublicIpAddressGet.json | 37 + .../examples/PublicIpAddressList.json | 60 + .../examples/PublicIpAddressListAll.json | 49 + .../examples/PublicIpAddressUpdateTags.json | 37 + .../PublicIpPrefixCreateCustomizedValues.json | 69 + .../PublicIpPrefixCreateDefaults.json | 59 + .../examples/PublicIpPrefixDelete.json | 13 + .../examples/PublicIpPrefixGet.json | 35 + .../examples/PublicIpPrefixList.json | 56 + .../examples/PublicIpPrefixListAll.json | 76 + .../examples/PublicIpPrefixUpdateTags.json | 40 + .../examples/RouteFilterCreate.json | 95 + .../examples/RouteFilterDelete.json | 13 + .../2019-09-01/examples/RouteFilterGet.json | 42 + .../2019-09-01/examples/RouteFilterList.json | 44 + .../RouteFilterListByResourceGroup.json | 45 + .../examples/RouteFilterRuleCreate.json | 53 + .../examples/RouteFilterRuleDelete.json | 14 + .../examples/RouteFilterRuleGet.json | 27 + .../RouteFilterRuleListByRouteFilter.json | 30 + .../examples/RouteFilterUpdateTags.json | 46 + .../2019-09-01/examples/RouteTableCreate.json | 39 + .../examples/RouteTableCreateWithRoute.json | 70 + .../2019-09-01/examples/RouteTableDelete.json | 13 + .../2019-09-01/examples/RouteTableGet.json | 33 + .../2019-09-01/examples/RouteTableList.json | 47 + .../examples/RouteTableListAll.json | 44 + .../examples/RouteTableRouteCreate.json | 39 + .../examples/RouteTableRouteDelete.json | 14 + .../examples/RouteTableRouteGet.json | 22 + .../examples/RouteTableRouteList.json | 34 + .../examples/RouteTableUpdateTags.json | 32 + .../examples/ServiceCommunityList.json | 56 + .../examples/ServiceEndpointPolicyCreate.json | 41 + ...iceEndpointPolicyCreateWithDefinition.json | 83 + ...ServiceEndpointPolicyDefinitionCreate.json | 52 + ...ServiceEndpointPolicyDefinitionDelete.json | 14 + .../ServiceEndpointPolicyDefinitionGet.json | 26 + .../ServiceEndpointPolicyDefinitionList.json | 29 + .../examples/ServiceEndpointPolicyDelete.json | 13 + .../examples/ServiceEndpointPolicyGet.json | 37 + .../examples/ServiceEndpointPolicyList.json | 63 + .../ServiceEndpointPolicyListAll.json | 64 + .../ServiceEndpointPolicyUpdateTags.json | 47 + .../2019-09-01/examples/ServiceTagsList.json | 88 + .../2019-09-01/examples/SubnetCreate.json | 36 + .../examples/SubnetCreateServiceEndpoint.json | 61 + .../examples/SubnetCreateWithDelegation.json | 60 + .../2019-09-01/examples/SubnetDelete.json | 14 + .../stable/2019-09-01/examples/SubnetGet.json | 21 + .../examples/SubnetGetWithDelegation.json | 33 + .../2019-09-01/examples/SubnetList.json | 32 + .../SubnetPrepareNetworkPolicies.json | 16 + .../SubnetUnprepareNetworkPolicies.json | 16 + .../stable/2019-09-01/examples/UsageList.json | 265 + .../examples/UsageListSpacedLocation.json | 335 ++ .../2019-09-01/examples/VirtualHubDelete.json | 13 + .../2019-09-01/examples/VirtualHubGet.json | 29 + .../2019-09-01/examples/VirtualHubList.json | 146 + .../VirtualHubListByResourceGroup.json | 147 + .../2019-09-01/examples/VirtualHubPut.json | 61 + .../VirtualHubRouteTableV2Delete.json | 14 + .../examples/VirtualHubRouteTableV2Get.json | 47 + .../examples/VirtualHubRouteTableV2List.json | 72 + .../examples/VirtualHubRouteTableV2Put.json | 113 + .../examples/VirtualHubUpdateTags.json | 39 + ...tualNetworkCheckIPAddressAvailability.json | 23 + .../examples/VirtualNetworkCreate.json | 56 + ...ualNetworkCreateServiceEndpointPolicy.json | 126 + .../VirtualNetworkCreateServiceEndpoints.json | 111 + .../examples/VirtualNetworkCreateSubnet.json | 82 + ...etworkCreateSubnetWithAddressPrefixes.json | 91 + ...tualNetworkCreateSubnetWithDelegation.json | 114 + ...irtualNetworkCreateWithBgpCommunities.json | 93 + .../examples/VirtualNetworkDelete.json | 13 + ...VirtualNetworkGatewayConnectionCreate.json | 131 + ...VirtualNetworkGatewayConnectionDelete.json | 13 + .../VirtualNetworkGatewayConnectionGet.json | 42 + ...lNetworkGatewayConnectionGetSharedKey.json | 15 + ...etworkGatewayConnectionResetSharedKey.json | 19 + ...lNetworkGatewayConnectionSetSharedKey.json | 23 + ...rkGatewayConnectionStartPacketCapture.json | 14 + ...onnectionStartPacketCaptureFilterData.json | 17 + ...orkGatewayConnectionStopPacketCapture.json | 17 + ...ualNetworkGatewayConnectionUpdateTags.json | 51 + .../VirtualNetworkGatewayConnectionsList.json | 71 + .../examples/VirtualNetworkGatewayDelete.json | 13 + ...etworkGatewayGenerateVpnClientPackage.json | 15 + ...rtualNetworkGatewayGenerateVpnProfile.json | 15 + .../examples/VirtualNetworkGatewayGet.json | 70 + ...tualNetworkGatewayGetAdvertisedRoutes.json | 15 + ...VirtualNetworkGatewayGetBGPPeerStatus.json | 14 + ...orkGatewayGetVpnClientIpsecParameters.json | 22 + ...NetworkGatewayGetVpnProfilePackageUrl.json | 14 + ...rkGatewayGetVpnclientConnectionHealth.json | 45 + .../VirtualNetworkGatewayLearnedRoutes.json | 14 + .../examples/VirtualNetworkGatewayList.json | 126 + .../examples/VirtualNetworkGatewayReset.json | 60 + ...NetworkGatewayResetVpnClientSharedKey.json | 12 + ...orkGatewaySetVpnClientIpsecParameters.json | 24 + ...rtualNetworkGatewayStartPacketCapture.json | 14 + ...rkGatewayStartPacketCaptureFilterData.json | 17 + ...irtualNetworkGatewayStopPacketCapture.json | 17 + ...rtualNetworkGatewaySupportedVpnDevice.json | 13 + .../examples/VirtualNetworkGatewayUpdate.json | 171 + .../VirtualNetworkGatewayUpdateTags.json | 69 + ...rkGatewayVpnDeviceConfigurationScript.json | 18 + ...VirtualNetworkGatewaysListConnections.json | 41 + .../examples/VirtualNetworkGet.json | 42 + ...tualNetworkGetResourceNavigationLinks.json | 28 + ...tualNetworkGetServiceAssociationLinks.json | 31 + ...lNetworkGetWithServiceAssociationLink.json | 69 + ...VirtualNetworkGetWithSubnetDelegation.json | 54 + .../examples/VirtualNetworkList.json | 64 + .../examples/VirtualNetworkListAll.json | 63 + .../examples/VirtualNetworkListUsage.json | 36 + .../examples/VirtualNetworkPeeringCreate.json | 66 + .../examples/VirtualNetworkPeeringDelete.json | 14 + .../examples/VirtualNetworkPeeringGet.json | 33 + .../examples/VirtualNetworkPeeringList.json | 56 + .../examples/VirtualNetworkTapCreate.json | 62 + .../examples/VirtualNetworkTapDelete.json | 13 + .../examples/VirtualNetworkTapGet.json | 32 + .../examples/VirtualNetworkTapList.json | 55 + .../examples/VirtualNetworkTapListAll.json | 54 + .../examples/VirtualNetworkTapUpdateTags.json | 40 + .../examples/VirtualNetworkUpdateTags.json | 39 + .../examples/VirtualRouterDelete.json | 13 + .../2019-09-01/examples/VirtualRouterGet.json | 38 + .../VirtualRouterListByResourceGroup.json | 41 + .../VirtualRouterListBySubscription.json | 40 + .../examples/VirtualRouterPeeringDelete.json | 14 + .../examples/VirtualRouterPeeringGet.json | 23 + .../examples/VirtualRouterPeeringList.json | 26 + .../examples/VirtualRouterPeeringPut.json | 41 + .../2019-09-01/examples/VirtualRouterPut.json | 77 + .../2019-09-01/examples/VirtualWANDelete.json | 13 + .../2019-09-01/examples/VirtualWANGet.json | 35 + .../2019-09-01/examples/VirtualWANList.json | 60 + .../VirtualWANListByResourceGroup.json | 61 + .../2019-09-01/examples/VirtualWANPut.json | 70 + .../examples/VirtualWANUpdateTags.json | 42 + .../VirtualWanSupportedSecurityProviders.json | 22 + .../examples/VmssNetworkInterfaceGet.json | 65 + .../VmssNetworkInterfaceIpConfigGet.json | 39 + .../VmssNetworkInterfaceIpConfigList.json | 42 + .../examples/VmssNetworkInterfaceList.json | 118 + .../2019-09-01/examples/VmssPublicIpGet.json | 34 + .../examples/VmssPublicIpListAll.json | 52 + .../examples/VmssVmNetworkInterfaceList.json | 68 + .../examples/VmssVmPublicIpList.json | 37 + .../examples/VpnConnectionDelete.json | 14 + .../2019-09-01/examples/VpnConnectionGet.json | 75 + .../examples/VpnConnectionList.json | 76 + .../2019-09-01/examples/VpnConnectionPut.json | 112 + .../2019-09-01/examples/VpnGatewayDelete.json | 13 + .../2019-09-01/examples/VpnGatewayGet.json | 94 + .../2019-09-01/examples/VpnGatewayList.json | 137 + .../VpnGatewayListByResourceGroup.json | 137 + .../2019-09-01/examples/VpnGatewayPut.json | 170 + .../2019-09-01/examples/VpnGatewayReset.json | 53 + .../examples/VpnGatewayUpdateTags.json | 60 + .../VpnServerConfigurationDelete.json | 13 + .../examples/VpnServerConfigurationGet.json | 69 + .../examples/VpnServerConfigurationList.json | 128 + ...erverConfigurationListByResourceGroup.json | 129 + .../examples/VpnServerConfigurationPut.json | 177 + .../VpnServerConfigurationUpdateTags.json | 73 + .../2019-09-01/examples/VpnSiteDelete.json | 13 + .../2019-09-01/examples/VpnSiteGet.json | 57 + .../examples/VpnSiteLinkConnectionGet.json | 37 + .../examples/VpnSiteLinkConnectionList.json | 38 + .../2019-09-01/examples/VpnSiteLinkGet.json | 30 + .../examples/VpnSiteLinkListByVpnSite.json | 50 + .../2019-09-01/examples/VpnSiteList.json | 88 + .../examples/VpnSiteListByResourceGroup.json | 88 + .../2019-09-01/examples/VpnSitePut.json | 136 + .../examples/VpnSiteUpdateTags.json | 48 + .../VpnSitesConfigurationDownload.json | 22 + .../examples/WafListAllPolicies.json | 102 + .../2019-09-01/examples/WafListPolicies.json | 103 + .../examples/WafPolicyCreateOrUpdate.json | 258 + .../2019-09-01/examples/WafPolicyDelete.json | 13 + .../2019-09-01/examples/WafPolicyGet.json | 140 + .../2019-09-01/expressRouteCircuit.json | 2500 +++++++++ .../expressRouteCrossConnection.json | 1006 ++++ .../2019-09-01/expressRouteGateway.json | 700 +++ .../stable/2019-09-01/expressRoutePort.json | 869 ++++ .../stable/2019-09-01/firewallPolicy.json | 982 ++++ .../stable/2019-09-01/ipGroups.json | 422 ++ .../stable/2019-09-01/loadBalancer.json | 2058 ++++++++ .../stable/2019-09-01/natGateway.json | 472 ++ .../stable/2019-09-01/network.json | 335 ++ .../stable/2019-09-01/networkInterface.json | 1522 ++++++ .../stable/2019-09-01/networkProfile.json | 622 +++ .../2019-09-01/networkSecurityGroup.json | 974 ++++ .../stable/2019-09-01/networkWatcher.json | 3055 +++++++++++ .../stable/2019-09-01/operation.json | 271 + .../stable/2019-09-01/privateEndpoint.json | 572 +++ .../stable/2019-09-01/privateLinkService.json | 1068 ++++ .../stable/2019-09-01/publicIpAddress.json | 540 ++ .../stable/2019-09-01/publicIpPrefix.json | 485 ++ .../stable/2019-09-01/routeFilter.json | 822 +++ .../stable/2019-09-01/routeTable.json | 755 +++ .../stable/2019-09-01/serviceCommunity.json | 158 + .../2019-09-01/serviceEndpointPolicy.json | 742 +++ .../stable/2019-09-01/serviceTags.json | 166 + .../stable/2019-09-01/usage.json | 160 + .../stable/2019-09-01/virtualNetwork.json | 1951 +++++++ .../2019-09-01/virtualNetworkGateway.json | 3561 +++++++++++++ .../stable/2019-09-01/virtualNetworkTap.json | 426 ++ .../stable/2019-09-01/virtualRouter.json | 698 +++ .../stable/2019-09-01/virtualWan.json | 4529 +++++++++++++++++ .../2019-09-01/vmssNetworkInterface.json | 374 ++ .../2019-09-01/vmssPublicIpAddress.json | 241 + .../2019-09-01/webapplicationfirewall.json | 743 +++ .../network/resource-manager/readme.go.md | 10 + .../network/resource-manager/readme.java.md | 14 + .../network/resource-manager/readme.md | 59 +- .../network/resource-manager/readme.python.md | 12 + 498 files changed, 68723 insertions(+), 2 deletions(-) create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/availableDelegations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/availableServiceAliases.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/azureFirewall.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ddosCustomPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ddosProtectionPlan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/endpointService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableServerVariablesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthTest.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsSubscriptionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallFqdnTagsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutInHub.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckDnsNameAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibility.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/EndpointServicesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitARPTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableSummaryList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsArpTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteProviderList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GetVirtualWanVpnServerConfigurations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateStandardSku.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithInboundNatPool.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListSimple.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListVmss.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveNSGList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceLoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileCreateConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetWithContainerNic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreateWithRule.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAvailableProvidersListGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAzureReachabilityReportGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectivityCheck.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogConfigure.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogStatusQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherIpFlowVerify.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNextHopGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureQueryStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCapturesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherSecurityGroupViewGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTopologyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootResultQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/OperationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreateForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGetForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDns.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleListByRouteFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreateWithRoute.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceCommunityList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreateWithDefinition.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceTagsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateServiceEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetPrepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetUnprepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageListSpacedLocation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Delete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Get.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2List.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Put.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCheckIPAddressAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpoints.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateWithBgpCommunities.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayLearnedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaysListConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetResourceNavigationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetServiceAssociationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithServiceAssociationLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithSubnetDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListUsage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWanSupportedSecurityProviders.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmPublicIpList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkListByVpnSite.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitesConfigurationDownload.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListAllPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/firewallPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ipGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/loadBalancer.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/natGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/network.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcher.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/operation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateLinkService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpPrefix.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/routeFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/routeTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceCommunity.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/usage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetwork.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualRouter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualWan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/vmssPublicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json diff --git a/custom-words.txt b/custom-words.txt index 8a490cd0e369..d08cc9670127 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -663,6 +663,7 @@ ipconfigurations ipfilterrules Ipsec ipssl +ipgroups iscloneable Iscsi iscsiservers diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json new file mode 100644 index 000000000000..5bc4766475c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json @@ -0,0 +1,2822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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}/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 of backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference of an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference of an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference of an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference of IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "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." + }, + "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 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 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." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "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." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "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." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "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." + } + }, + "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/2019-09-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..d8178ed302da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/availableDelegations.json new file mode 100644 index 000000000000..6ed829e3f83c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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": "Describes the actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/availableServiceAliases.json new file mode 100644 index 000000000000..44c1115ca02b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/azureFirewall.json new file mode 100644 index 000000000000..facac61ea55a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/azureFirewall.json @@ -0,0 +1,1014 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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 Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "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 in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.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": { + "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" + } + } + } + }, + "/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 of the subnet resource. This resource must be named 'AzureFirewallSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "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." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "provisioningState": { + "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": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "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" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..826df81efc56 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json new file mode 100644 index 000000000000..c41f80769e1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json @@ -0,0 +1,409 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "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": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "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": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "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": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "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" + } + } + } + }, + "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." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json new file mode 100644 index 000000000000..30dad55ccfd4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..8f18dad16f88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..5b4074ee079c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/endpointService.json new file mode 100644 index 000000000000..b7c0177a4bc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..e9835a387885 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..8df767362c21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..ae18d2f2a75d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..a975e17deefa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..c57127338544 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..12f7cae8dd69 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..80319aa0bdbf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..06d99d87c503 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..7e397bfb169b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..5db73aa1bb74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,734 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..c37f0cd27c29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..f1ad00cb8426 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,254 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..50b9b5e641b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..14cd67fc06ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..f8cb711cfe04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..f8cb711cfe04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..5dd4209d9c35 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..06e7b3062c25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..11cf7001de10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..47360cf14dd7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..4d9033da3f97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..482765498a29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..cd5099aa9ae0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..1c2307a89538 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..c88e9083c81a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..7b0a8665c600 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..28cca3904152 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..6c7113a3ad0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..5fc2c19326c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..4f4a916815cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..4f9f24e4d944 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..07361cddd255 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..1a970261a960 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..62df8a96d76f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGet.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2019-09-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": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..ce99ff9b08f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..27a47d7d27fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2019-09-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" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..db50d51f4c18 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,178 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "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/2019-09-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..d97ba6774d0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "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/2019-09-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..df53e54cfdbb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPut.json @@ -0,0 +1,496 @@ +{ + "parameters": { + "api-version": "2019-09-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" + ], + "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/2019-09-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..1ce7938e2cf9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2019-09-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" + } + } + } + }, + "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": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "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": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..77dd548bbe9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,506 @@ +{ + "parameters": { + "api-version": "2019-09-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" + ] + } + ] + } + } + ], + "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/2019-09-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..661caaaf2b82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,508 @@ +{ + "parameters": { + "api-version": "2019-09-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" + ] + } + ] + } + } + ], + "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/2019-09-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..8d109e80ece8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..7ff0942b0596 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..9061bf2f88a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..c66144432ebe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..00d8874caa25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..9aeb4b65e6fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..4c9bac8ae545 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..c310e51407ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..85cc866a1fc2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..aebbf34f88ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..a84807c3d695 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..adf1072bb619 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..4c29efc503fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..ab2aac46ca94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..6c3f63b3405c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..50902151f345 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..9660d2ec8826 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..3e0ca36f4220 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..1bfab44e97a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..15100ceea063 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..2826bc8e87db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..1ce7ca957034 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..7f4791b7b98a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..2410e6009f6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2019-09-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/2019-09-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..bceb1462d3f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..b855c037ffba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..79ed85dc5b8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..26726173b436 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..4c64e0aa2587 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..4cd04decb138 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..d63a7a72362e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..7349bb74fe44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..e467d2b99f49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..2802cd5e2001 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..1fe89c3d8a58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..a90e90d8e1d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..66e8b4b81fa8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..4ab42b42d7a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..9b03410fdbb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..9d8ab814f0c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..4ef4b440c4a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..e7a1c0b6ae1e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..f1138f1c84d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..47dbccf2f4e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..0cd327bbf950 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..6317365d2370 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..af3e8062a51f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..49859bfd1be5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..022398acf83a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..e73269b097b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..7e69eea209ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..70e2eab0f30d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..daf22f8bc554 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..1dbe04b4944c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..97caa5569e33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..6035db8a0c39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..1e963bb2bfd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..b40447eb7465 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..e024e97044e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..b135409a910f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..3aef00096b3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..e3766da93c72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..6ce55e0b3c98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-09-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..0721c3735797 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..a98db8230c41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..bc1bf2084be6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-09-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 + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..a6cd946dbe2e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-09-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 + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..3c781c9f11ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..15c4ffaf7306 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..eee116e4bc2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..d3103ff2ba31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..19f409b58915 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..e51b5ac2de8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..92bf42bf00d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..91f998e4e73a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..8412fc3e4b37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..1c1b943f19cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..e5136bad59a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..360eef0b2e48 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..dccd90ae83a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..58f1335de444 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..83e62d6159ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..0f2ac02e1b77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..65e8de5d0e87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyPut.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert" + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..050b78a9569e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..819e59deadd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..af79746ff019 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..b580a589dbd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..7298dc446811 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..96bf71a1197d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..7c2f6db933fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..2680f2fcf663 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..9f3c3f9cf936 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..56a18415883e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..d59ab5388480 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..6ccf2536ea91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..71fbe1881992 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsCreate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-09-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" + } + ] + }, + "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" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..27e2f1b75f9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..f70ac4a60a08 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-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" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..de7cf32e55d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-09-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" + } + ] + }, + "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" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..879878cbf8ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-09-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" + } + ] + }, + "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" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..41b5d3b0c716 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-09-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" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..a7e06554530d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..8aeb5d78c164 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..1ba1efb72f68 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..fa7b4d72a0c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..66675c084979 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..e8ce9155ada2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..46a399f570d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..9556d26952ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..193cd6020c02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..36a7fe56dd22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..8e54cccac5cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..9aebde747776 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..6a3dbdcb10f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..a776845889e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..fe176e06d0bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..fd6763f9c10e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..dc8825f97056 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..37e3ab17b25e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..56f6be71a623 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..e5e8ca10757f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..12cc1b95b865 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..532172bb188c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..ab8836553d23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..baee9dbbcac0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..660d5a2375ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..4ec2f5256d2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..5276850c8983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..f9f43f38c70e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "201": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "202": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..6c75d97c97a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..66726298cac4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..842c0ae37731 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..4650b9440059 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..7caafaabfed6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..bf7e5dab925a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..4038c3ed3035 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..90faa0c84f82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..0b1fef48de38 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..0ca65d185b51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..bb28904402f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..9560724ebefc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..fb2badacf2b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..d8cb17151a46 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..53cd69fc3762 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..6345d57efce5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-09-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..df1ded8b06fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..e69cca0c8d48 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..a497060822db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..8a20d7024b18 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..8ad05f629147 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..932360d135fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..d70d9ac045e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..c81efdc305ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..f373063e3559 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..5b578e9daf90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..fa9c6d9b0590 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..d45d92bda50a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..b77784acce51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..86ba72fe3224 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..3e22d837c85e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..9c7ad5e74d7f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..1d53b66d7b9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..81631f0dbd88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..ecb20099fc53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..ac8943a743d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..46404cfa4de7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..58ce71f7b8ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..80119a6fb4df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..bda4522ad3dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..48cd3a114165 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + } + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..7194440bcd6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..688b65a084fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..4bc53be3ed28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..7940740b4519 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..1d0ae9292047 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..50bb5c589993 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..36dab0b593da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..13df5531a1bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..d1bb85091484 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..b6d58ec3715c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..b1171abaf5f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..755492bb0d3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..87061f055db3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..8a39ae32bb84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..2b7ab88ac486 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..cb27ab11b458 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..a45ae33f370a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..76ebc9b78dcb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..7aa23188c771 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..02049cbf275f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..a632f2cefca6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/OperationList.json new file mode 100644 index 000000000000..5c491c3c79f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..dbd87ee49354 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..ad98d9455ee1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..7361982d641b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..f7aa7a526554 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..9a4f1e6c9fc4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2019-09-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/2019-09-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..b1c3a8f99a98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-09-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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..382ee95cf6b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-09-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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..7d6f473cc399 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..8b9b3eac59c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "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" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..f3c647e1a326 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..e3135b8744f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..88987b0911f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..debd88127751 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..7af77ac72b60 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..6ac3d4463383 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..e8b2c7e4594e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..520c56bf8b2e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointList.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..f105f0abb19a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..e9e9eb2b8b5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..00157fcba8b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..fb56bee1ce4f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..125070d91dce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..63e8f7d6016d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..055340f80dd8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..3c735de83fb6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..6813b31c9645 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..db79ba568b11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..8a52102537ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..f30084270744 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..994817d53108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..604078884c6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..1591cb1d787b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..c6c59d9e9ddf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..601f5a336a2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..61595bdef1b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..461a8d329094 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..f1ad7fcda13a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..5be1c8b34039 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..4351b5be6224 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..8c4e3df9be28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..c036566d9e98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..35e89528c878 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..65035733ccc6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..916039501099 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..0b9b47bb99d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..745cbbca5314 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..315228b013b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..caff4af05a2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..30a46696adfa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..e8767a5a5829 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..362cd25fe230 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..b730756f8225 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..c3012389c2b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..b1be4c906032 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..c61fb74ef36b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..8ef6d7d678f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableList.json new file mode 100644 index 000000000000..982716633afb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..9526969b53f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..b7cb7061c539 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..768a735fdf8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..8ddf96c12221 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..f758c21aa339 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..14e38e52441c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..f9ed67a51a2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..cccd9a4fab94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..2c6b7de0a417 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..66a594d71809 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..d6c45d1e1dfb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..7097a6fb881b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..bd37651a6dfc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..e735f4e3e44b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..ce1448986098 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..ba4385606d04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..5959b08bb4ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..d0a55cbd1e86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..ca7e1cb14b71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..e840d254f39f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..281059ddf781 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..d015f8e89d7f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..1c4ead0a2077 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGet.json new file mode 100644 index 000000000000..ee83a8d37957 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..92a3dd2785ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetList.json new file mode 100644 index 000000000000..685dfdbc7969 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..13e85d5697fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..b3d017cac7d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageList.json new file mode 100644 index 000000000000..cb9e7bad6ca9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..e7c3f3fd4e30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..6e9872315531 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..77325c83512b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..e556dd268330 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubList.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "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" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "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" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..4d9f1e6638da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "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" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "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" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..b1fc29784013 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubPut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-09-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" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..09e11ee31df2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..17bf08b6be53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..b735523b8756 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..92ea32e12e24 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..eee51c8047b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..05f9c9ec174a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..e4ee4baf2e04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..a527c4f045fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..01698a436106 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..958500670968 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..ba5335328a27 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..79493491c1ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..06a2511ee371 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-09-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:60000" + } + }, + "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:60000", + "regionalCommunity": "12076:51004" + }, + "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:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..827e91765845 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..73ba7736f9d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "2019-09-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, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..4ed50e2e4a56 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..636a762c5188 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..c8debd3b97da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..b9d9eb448a19 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..cdf93f05fe87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..e2ed9b1c6bfa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..9295c41d6ee4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': null,'IpSubnetValueAsAny': true,'TcpFlags': 16,'PortValueAsAny': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..4cc930c5a748 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..43c64336f51b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..f92a3dd92809 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..e827f19996b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..3394d0c76f8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..fd26573e544e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..d471ad839a31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..5f08b1796cd4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..1521bc83b7fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..086eba04eb2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..d55c43f25a7c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..94b3bcd8fa24 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..1521bc83b7fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..3b3ba1bc3353 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..970bdd74c717 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..8877237a810a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..f5ba2acb7a5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..37041436498d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..d1a1dac25d9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': null,'IpSubnetValueAsAny': true,'TcpFlags': 16,'PortValueAsAny': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..88f123db4cc0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..3c55bd535258 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..517d522e5077 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "api-version": "2019-09-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" + }, + "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": [], + "aadTenant": "", + "aadAudience": "", + "aadIssuer": "" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..55e427627b4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..8d3c0dcc092a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..44765d82901e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2019-09-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..17f36ec8245e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..29236f9472a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..bbe3497749b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..10d10023f877 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..ad1ba108add2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..3364186591ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..e5bb74ec1704 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..717bfc73198e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..0fda29a99345 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..b96796494bd6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..b909ea4a4020 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..0b16a7c4e0cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..4fa16db4f67f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..ea94bf00ff45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..6105b83a643e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..9841382755fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..cbb6bbd1c2a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..5f9b039c2a3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..f1fd94d21bc0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..8762723c8902 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..25128f5d7578 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..6cc0ff854c2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..b6e5e418d8c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..afb91e0b583f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..124abfe36f40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..c44ca0179aa3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..4b2f19148424 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..ebe5f9e352c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..d225b30f0861 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..1adc988979c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..a7781780eb31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..1d920660c18f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..6a928e47b7fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..857de6bf4929 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..1ca47b5981f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..da9d47135e4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..4812ae033ea5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..58487fe0028c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..1d30aa249195 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnConnectionPut.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..ffc2b0522fe3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..0bc5f146b351 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayGet.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..a53e72f9c696 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..a53e72f9c696 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..51430d5aa3ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayPut.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..296277e50ab8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayReset.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..556a0ac2dab5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..1c397f0c73ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..7dc0277277b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "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/2019-09-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..397c11debb69 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2019-09-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": "123_abc", + "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" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "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/2019-09-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..a293c4ee057a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2019-09-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": "123_abc", + "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": "123_abc", + "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/2019-09-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..2ff095c2abab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "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" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "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" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "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/2019-09-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..b0bc00b3a906 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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": "123_abc", + "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/2019-09-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..14d8839c9660 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..1c0639e2ab60 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..085a25e4b534 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..eac7884d7ae8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..3189abe42cd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..44867d017701 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..7cd0e48a84c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..893267967f1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..f13404305d15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitePut.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..4c7faeab8990 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-09-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/2019-09-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..d9ec11c165e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-09-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..4cedb187dfdf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..7ac560957983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..b479fb18ff96 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..ee865efe9dcb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..d9d2dbfaf8e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2019-09-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/2019-09-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json new file mode 100644 index 000000000000..1e7b4398d34f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json @@ -0,0 +1,2500 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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": { + "readOnly": true, + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "readOnly": true, + "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 of 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 of the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "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": "#/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 of the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./expressRouteGateway.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$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": { + "readOnly": true, + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "readOnly": true, + "$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": { + "readOnly": true, + "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": { + "readOnly": true, + "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/2019-09-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..433c68c6bf9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json @@ -0,0 +1,1006 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2019-09-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": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "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/2019-09-01/expressRouteGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteGateway.json new file mode 100644 index 000000000000..0f1b6d73b341 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRouteGateway.json @@ -0,0 +1,700 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "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" + } + }, + "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": { + "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" + } + } + }, + "/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": { + "202": { + "description": "Accepted, and the operation will continue 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" + } + } + }, + "/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" + } + } + } + } + } + }, + "definitions": { + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "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." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRoutePort.json new file mode 100644 index 000000000000..5b7472cc149b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/expressRoutePort.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": "2019-09-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" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "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." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/firewallPolicy.json new file mode 100644 index 000000000000..2a520178b4ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/firewallPolicy.json @@ -0,0 +1,982 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "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" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ipGroups.json new file mode 100644 index 000000000000..4582d4143da3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/ipGroups.json @@ -0,0 +1,422 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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 an 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." + }, + { + "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 Azure resources that this IpGroups is associated with", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/loadBalancer.json new file mode 100644 index 000000000000..bceace8757db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/loadBalancer.json @@ -0,0 +1,2058 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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 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" + } + }, + "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" + } + } + } + }, + "/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 + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference of the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Public IP Prefix resource." + }, + "provisioningState": { + "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." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "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 of the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "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": { + "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/2019-09-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/natGateway.json new file mode 100644 index 000000000000..ca5b4d447d14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/natGateway.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "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/2019-09-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/network.json new file mode 100644 index 000000000000..b0362f2d62fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/network.json @@ -0,0 +1,335 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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 + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkInterface.json new file mode 100644 index 000000000000..fb2beef41b21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkInterface.json @@ -0,0 +1,1522 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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 of the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference of ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference of LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "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 of a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference of the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "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." + }, + "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": { + "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 of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference of 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/2019-09-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkProfile.json new file mode 100644 index 000000000000..031d8c6d7c22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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 of the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "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/2019-09-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json new file mode 100644 index 000000000000..98f7c6e6750b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json @@ -0,0 +1,974 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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." + } + }, + "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." + }, + "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/2019-09-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcher.json new file mode 100644 index 000000000000..63f36df4ab82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcher.json @@ -0,0 +1,3055 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "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 of the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "Describes the storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "Describes the storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "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": "Describes the properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "required": [ + "networkWatcherFlowAnalyticsConfiguration" + ], + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "required": [ + "enabled" + ], + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "Describes the source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "Describes the destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "Describes the HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' 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 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/operation.json new file mode 100644 index 000000000000..c219a37f1d0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateEndpoint.json new file mode 100644 index 000000000000..abf76116e775 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateEndpoint.json @@ -0,0 +1,572 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "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." + } + }, + "description": "Properties of the private endpoint." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "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." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateLinkService.json new file mode 100644 index 000000000000..cd103296540d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/privateLinkService.json @@ -0,0 +1,1068 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "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." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "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/2019-09-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpAddress.json new file mode 100644 index 000000000000..0a756e1265d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpAddress.json @@ -0,0 +1,540 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "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 subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "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 + } + } + }, + "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": { + "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." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpPrefix.json new file mode 100644 index 000000000000..b95ca9805d90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/publicIpPrefix.json @@ -0,0 +1,485 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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 + } + } + }, + "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." + }, + "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": { + "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/2019-09-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/routeFilter.json new file mode 100644 index 000000000000..a0258c488cfa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/routeTable.json new file mode 100644 index 000000000000..f73ce6564550 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/routeTable.json @@ -0,0 +1,755 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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." + } + }, + "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." + } + }, + "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." + } + }, + "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/2019-09-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceCommunity.json new file mode 100644 index 000000000000..cae2824c480b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..3d95d4f88572 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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/2019-09-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceTags.json new file mode 100644 index 000000000000..925d3dffa54a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/serviceTags.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/usage.json new file mode 100644 index 000000000000..77ba826df8c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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": "Describes network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetwork.json new file mode 100644 index 000000000000..87c7e07a2202 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetwork.json @@ -0,0 +1,1951 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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": "Describes the actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "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 of the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference of the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "resourceNavigationLinks": { + "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 of the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference of the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "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." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "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/2019-09-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..bfd16de2d519 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json @@ -0,0 +1,3561 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-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/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" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "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" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference of the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference of the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "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." + } + }, + "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." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "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." + }, + "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." + }, + "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." + }, + "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." + }, + "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 + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json new file mode 100644 index 000000000000..f1b58db417b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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 of the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualRouter.json new file mode 100644 index 000000000000..315ac32e8e70 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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": "2019-09-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": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 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": "Gets name of the peering unique to VirtualRouter. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource" + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 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/2019-09-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualWan.json new file mode 100644 index 000000000000..321c0eef5292 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/virtualWan.json @@ -0,0 +1,4529 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2019-09-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}": { + "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": { + "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" + } + } + } + }, + "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": { + "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": { + "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 VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error 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": { + "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" + } + } + } + }, + "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}/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" + } + } + } + }, + "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" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "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." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "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." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "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." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "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" + } + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "provisioningState": { + "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." + } + } + }, + "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." + }, + "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": "Gets 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." + } + }, + "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 of the address space resource which represents Address space for P2S VpnClient." + }, + "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." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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/2019-09-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-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/2019-09-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json new file mode 100644 index 000000000000..111b1feb2b2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-09-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": "Describes policySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "Describes custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "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": "Describes the Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "Describes the ruleSets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "Describes if the policy is in enabled state or disabled state.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "Describes if it is in detection mode or prevention mode at policy level.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "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": "Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "Describes type of rule.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Describes what transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Describes field of the matchVariable collection.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "Describes operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Describes if this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "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": "Describes 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": "Describes 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.go.md b/specification/network/resource-manager/readme.go.md index 756be5069dbe..b3d87ad9dec0 100644 --- a/specification/network/resource-manager/readme.go.md +++ b/specification/network/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 - tag: package-2019-06 @@ -41,6 +42,15 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2019-09 and go + +These settings apply only when `--tag=package-2019-09 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-09' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-09-01/$(namespace) +``` + ### Tag: package-2019-08 and go These settings apply only when `--tag=package-2019-08 --go` is specified on the command line. diff --git a/specification/network/resource-manager/readme.java.md b/specification/network/resource-manager/readme.java.md index ee90dba87896..080746b18a65 100644 --- a/specification/network/resource-manager/readme.java.md +++ b/specification/network/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-network ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 - tag: package-2019-06 @@ -29,6 +30,19 @@ batch: - tag: package-2017-10 ``` +### Tag: package-2019-09 and java + +These settings apply only when `--tag=package-2019-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2019_09_01 + output-folder: $(azure-libraries-for-java-folder)/network/resource-manager/v2019_09_01 + regenerate-manager: true + generate-interface: true +``` + ### Tag: package-2019-08 and java These settings apply only when `--tag=package-2019-08 --java` is specified on the command line. diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index e8ef6776f8c3..a1ec47cbd2ea 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,15 +28,66 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2019-08 +tag: package-2019-09 ``` +### Tag: package-2019-09 + +These settings apply only when `--tag=package-2019-09` is specified on the command line. + +```yaml $(tag) == 'package-2019-09' +input-file: + - Microsoft.Network/stable/2019-09-01/applicationGateway.json + - Microsoft.Network/stable/2019-09-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2019-09-01/availableDelegations.json + - Microsoft.Network/stable/2019-09-01/availableServiceAliases.json + - Microsoft.Network/stable/2019-09-01/azureFirewall.json + - Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2019-09-01/bastionHost.json + - Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json + - Microsoft.Network/stable/2019-09-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2019-09-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2019-09-01/endpointService.json + - Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json + - Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2019-09-01/expressRouteGateway.json + - Microsoft.Network/stable/2019-09-01/expressRoutePort.json + - Microsoft.Network/stable/2019-09-01/firewallPolicy.json + - Microsoft.Network/stable/2019-09-01/ipGroups.json + - Microsoft.Network/stable/2019-09-01/loadBalancer.json + - Microsoft.Network/stable/2019-09-01/natGateway.json + - Microsoft.Network/stable/2019-09-01/network.json + - Microsoft.Network/stable/2019-09-01/networkInterface.json + - Microsoft.Network/stable/2019-09-01/networkProfile.json + - Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json + - Microsoft.Network/stable/2019-09-01/networkWatcher.json + - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - Microsoft.Network/stable/2019-09-01/operation.json + - Microsoft.Network/stable/2019-09-01/privateEndpoint.json + - Microsoft.Network/stable/2019-09-01/privateLinkService.json + - Microsoft.Network/stable/2019-09-01/publicIpAddress.json + - Microsoft.Network/stable/2019-09-01/publicIpPrefix.json + - Microsoft.Network/stable/2019-09-01/routeFilter.json + - Microsoft.Network/stable/2019-09-01/routeTable.json + - Microsoft.Network/stable/2019-09-01/serviceCommunity.json + - Microsoft.Network/stable/2019-09-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2019-09-01/serviceTags.json + - Microsoft.Network/stable/2019-09-01/usage.json + - Microsoft.Network/stable/2019-09-01/virtualNetwork.json + - Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json + - Microsoft.Network/stable/2019-09-01/virtualRouter.json + - Microsoft.Network/stable/2019-09-01/virtualWan.json + - Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2019-09-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json +``` ### Tag: package-2019-08 These settings apply only when `--tag=package-2019-08` is specified on the command line. -```yaml $(tag) == 'package-2019-08' +``` yaml $(tag) == 'package-2019-08' input-file: - Microsoft.Network/stable/2019-08-01/applicationGateway.json - Microsoft.Network/stable/2019-08-01/applicationSecurityGroup.json @@ -82,6 +133,7 @@ input-file: - Microsoft.Network/stable/2019-08-01/vmssPublicIpAddress.json - Microsoft.Network/stable/2019-08-01/webapplicationfirewall.json ``` + ### Tag: package-2019-07 These settings apply only when `--tag=package-2019-07` is specified on the command line. @@ -1077,6 +1129,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: firewallPolicy.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: ipGroups.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: loadBalancer.json reason: name, id and type properties are inherited from the upper level diff --git a/specification/network/resource-manager/readme.python.md b/specification/network/resource-manager/readme.python.md index c453d27ff2e2..32a15facc2c8 100644 --- a/specification/network/resource-manager/readme.python.md +++ b/specification/network/resource-manager/readme.python.md @@ -18,6 +18,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 - tag: package-2019-06 @@ -43,6 +44,17 @@ batch: - tag: package-2015-06split ``` +### Tag: package-2019-09 and python + +These settings apply only when `--tag=package-2019-09 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-09' && $(python) +python: + namespace: azure.mgmt.network.v2019_09_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01 +``` + ### Tag: package-2019-08 and python These settings apply only when `--tag=package-2019-08 --python` is specified on the command line. From fce4dc4ffa535f135ee53d1e81edfba3a958b1c4 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 22 Oct 2019 01:30:46 +0000 Subject: [PATCH 42/54] regenerated all-api-versions --- .../network/resource-manager/readme.md | 45 ++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index a1ec47cbd2ea..b8c223dec840 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -1347,6 +1347,50 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Network/stable/2019-09-01/applicationGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/applicationSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/availableDelegations.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/availableServiceAliases.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/azureFirewall.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/bastionHost.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/ddosCustomPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/ddosProtectionPlan.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/endpointService.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRouteGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRoutePort.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/firewallPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/ipGroups.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/loadBalancer.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/natGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/network.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkInterface.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkProfile.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/operation.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/privateEndpoint.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/privateLinkService.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/publicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/publicIpPrefix.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/routeFilter.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/routeTable.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/serviceCommunity.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/serviceEndpointPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/serviceTags.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/usage.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualNetwork.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualRouter.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualWan.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/vmssPublicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/applicationGateway.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/applicationSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/availableDelegations.json @@ -1370,7 +1414,6 @@ input-file: - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkProfile.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/operation.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/privateEndpoint.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/privateLinkService.json From 6405fdd6023e04e54fb5c834c6f658ee10d59ca4 Mon Sep 17 00:00:00 2001 From: wanha-ms <56612697+wanha-ms@users.noreply.github.com> Date: Mon, 21 Oct 2019 18:39:45 -0700 Subject: [PATCH 43/54] =?UTF-8?q?=20update-event-schema-for-azure-storage-?= =?UTF-8?q?event-grid-notification-for-cr=E2=80=A6=20(#7509)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stable/2018-01-01/Storage.json | 169 +++++++++++++++++- 1 file changed, 167 insertions(+), 2 deletions(-) diff --git a/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json b/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json index 2a5adbfbc09c..ee1aea01e036 100644 --- a/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json +++ b/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json @@ -24,7 +24,7 @@ "type": "string" }, "eTag": { - "description": "The etag of the object at the time this event was triggered.", + "description": "The etag of the blob at the time this event was triggered.", "type": "string" }, "contentType": { @@ -36,6 +36,11 @@ "type": "integer", "format": "int64" }, + "contentOffset": { + "description": "The offset of the blob in bytes.", + "type": "integer", + "format": "int64" + }, "blobType": { "description": "The type of blob.", "type": "string" @@ -48,6 +53,10 @@ "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name.", "type": "string" }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, "storageDiagnostics": { "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", "type": "object" @@ -86,6 +95,162 @@ "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name.", "type": "string" }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, + "storageDiagnostics": { + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "type": "object" + } + } + }, + "StorageDirectoryCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.DirectoryCreated event.", + "type": "object", + "properties": { + "api": { + "description": "The name of the API/operation that triggered this event.", + "type": "string" + }, + "clientRequestId": { + "description": "A request id provided by the client of the storage API operation that triggered this event.", + "type": "string" + }, + "requestId": { + "description": "The request id generated by the storage service for the storage API operation that triggered this event.", + "type": "string" + }, + "eTag": { + "description": "The etag of the directory at the time this event was triggered.", + "type": "string" + }, + "url": { + "description": "The path to the directory.", + "type": "string" + }, + "sequencer": { + "description": "An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name.", + "type": "string" + }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, + "storageDiagnostics": { + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "type": "object" + } + } + }, + "StorageDirectoryDeletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.DirectoryDeleted event.", + "type": "object", + "properties": { + "api": { + "description": "The name of the API/operation that triggered this event.", + "type": "string" + }, + "clientRequestId": { + "description": "A request id provided by the client of the storage API operation that triggered this event.", + "type": "string" + }, + "requestId": { + "description": "The request id generated by the storage service for the storage API operation that triggered this event.", + "type": "string" + }, + "url": { + "description": "The path to the deleted directory.", + "type": "string" + }, + "recursive": { + "description": "Is this event for a recursive delete operation.", + "type": "boolean" + }, + "sequencer": { + "description": "An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name.", + "type": "string" + }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, + "storageDiagnostics": { + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "type": "object" + } + } + }, + "StorageBlobRenamedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobRenamed event.", + "type": "object", + "properties": { + "api": { + "description": "The name of the API/operation that triggered this event.", + "type": "string" + }, + "clientRequestId": { + "description": "A request id provided by the client of the storage API operation that triggered this event.", + "type": "string" + }, + "requestId": { + "description": "The request id generated by the storage service for the storage API operation that triggered this event.", + "type": "string" + }, + "sourceUrl": { + "description": "The path to the blob that was renamed.", + "type": "string" + }, + "destinationUrl": { + "description": "The new path to the blob after the rename operation.", + "type": "string" + }, + "sequencer": { + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name.", + "type": "string" + }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, + "storageDiagnostics": { + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "type": "object" + } + } + }, + "StorageDirectoryRenamedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.DirectoryRenamed event.", + "type": "object", + "properties": { + "api": { + "description": "The name of the API/operation that triggered this event.", + "type": "string" + }, + "clientRequestId": { + "description": "A request id provided by the client of the storage API operation that triggered this event.", + "type": "string" + }, + "requestId": { + "description": "The request id generated by the storage service for the storage API operation that triggered this event.", + "type": "string" + }, + "sourceUrl": { + "description": "The path to the directory that was renamed.", + "type": "string" + }, + "destinationUrl": { + "description": "The new path to the directory after the rename operation.", + "type": "string" + }, + "sequencer": { + "description": "An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name.", + "type": "string" + }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, "storageDiagnostics": { "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", "type": "object" @@ -93,4 +258,4 @@ } } } -} +} \ No newline at end of file From 08ec526db6e50f146521a4dd0bd2ce132f75e4d5 Mon Sep 17 00:00:00 2001 From: Filiz Topatan Date: Mon, 21 Oct 2019 19:41:01 -0700 Subject: [PATCH 44/54] [Resources] Add Deployment scripts as a new resource type - preview - (#7486) * Approved deployments scripts swagger from private repo * Update readme files and fix typo * Update property letter casing * Removing the containerSettings property due to network profile not supporting user assigned MSI. * Update specification/resources/resource-manager/readme.csharp.md update package name Co-Authored-By: Yeming Liu --- .../2019-10-01-preview/deploymentScripts.json | 877 ++++++++++++++++++ .../examples/DeploymentScripts_Create.json | 99 ++ .../examples/DeploymentScripts_Delete.json | 45 + .../examples/DeploymentScripts_Get.json | 42 + .../examples/DeploymentScripts_GetLogs.json | 22 + .../DeploymentScripts_GetLogsDefault.json | 18 + ...DeploymentScripts_ListByResourceGroup.json | 49 + .../DeploymentScripts_ListBySubscription.json | 44 + .../DeploymentScripts_Min_Create.json | 85 ++ .../examples/DeploymentScripts_Update.json | 53 ++ .../resource-manager/readme.csharp.md | 1 + .../resources/resource-manager/readme.md | 32 + 12 files changed, 1367 insertions(+) create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json new file mode 100644 index 000000000000..56a53796f73b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json @@ -0,0 +1,877 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentScriptsClient", + "description": "The APIs listed in this specification can be used to manage Deployment Scripts resource through the Azure Resource Manager.", + "version": "2019-10-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deploymentScripts/{scriptName}": { + "put": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_Create", + "description": "Creates a deployment script.", + "x-ms-examples": { + "DeploymentScriptsCreate": { + "$ref": "./examples/DeploymentScripts_Create.json" + }, + "DeploymentScriptsCreate_MinCreate": { + "$ref": "./examples/DeploymentScripts_Min_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "deploymentScript", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentScript" + }, + "description": "Deployment script supplied to the operation." + } + ], + "responses": { + "201": { + "description": "Created -- Deployment script created.", + "schema": { + "$ref": "#/definitions/DeploymentScript" + } + }, + "200": { + "description": "OK -- Deployment script is updated.", + "schema": { + "$ref": "#/definitions/DeploymentScript" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_Update", + "description": "Updates a deployment script.", + "x-ms-examples": { + "DeploymentScriptsUpdate": { + "$ref": "./examples/DeploymentScripts_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "deploymentScript", + "in": "body", + "schema": { + "$ref": "#/definitions/DeploymentScriptUpdateParameter" + }, + "description": "Updated deployment script supplied to the operation." + } + ], + "responses": { + "200": { + "description": "OK -- Deployment script is updated.", + "schema": { + "$ref": "#/definitions/DeploymentScript" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_Get", + "description": "Gets a deployment script with a given name.", + "x-ms-examples": { + "DeploymentScriptsGet": { + "$ref": "./examples/DeploymentScripts_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returns information about the deployment script.", + "schema": { + "$ref": "#/definitions/DeploymentScript" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_Delete", + "description": "Deletes a deployment script. When operation completes, status code 200 returned without content.", + "x-ms-examples": { + "DeploymentScriptsDelete": { + "$ref": "./examples/DeploymentScripts_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Deployment script deleted." + }, + "204": { + "description": "Deployment script does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deploymentScripts": { + "get": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_ListBySubscription", + "description": "Lists all deployment scripts for a given subscription.", + "x-ms-examples": { + "DeploymentScriptsListBySubscription": { + "$ref": "./examples/DeploymentScripts_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returns a list of deployment scripts.", + "schema": { + "$ref": "#/definitions/DeploymentScriptListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deploymentScripts/{scriptName}/logs": { + "get": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_GetLogs", + "description": "Gets deployment script logs for a given deployment script name.", + "x-ms-examples": { + "DeploymentScriptsGetLogs": { + "$ref": "./examples/DeploymentScripts_GetLogs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returns deployment script logs if available.", + "schema": { + "$ref": "#/definitions/ScriptLogsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deploymentScripts/{scriptName}/logs/default": { + "get": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_GetLogsDefault", + "description": "Gets deployment script logs for a given deployment script name.", + "x-ms-examples": { + "DeploymentScriptsGetLogs": { + "$ref": "./examples/DeploymentScripts_GetLogsDefault.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returns deployment script logs if available.", + "schema": { + "$ref": "#/definitions/ScriptLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deploymentScripts": { + "get": { + "tags": [ + "DeploymentScripts" + ], + "operationId": "DeploymentScripts_ListByResourceGroup", + "description": "Lists deployments scripts.", + "x-ms-examples": { + "DeploymentScriptsList": { + "$ref": "./examples/DeploymentScripts_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returns a list of deployment scripts.", + "schema": { + "$ref": "#/definitions/DeploymentScriptListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DeploymentScript": { + "required": [ + "identity", + "location", + "kind" + ], + "type": "object", + "description": "Deployment script object.", + "discriminator": "kind", + "properties": { + "identity": { + "description": "Managed identity to be used for this deployment script. Currently, only user-assigned MSI is supported.", + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "location": { + "type": "string", + "x-ms-mutability": [ "read", "create" ], + "description": "The location of the ACI and the storage account for the deployment script." + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "kind": { + "type": "string", + "description": "Type of the script.", + "enum": [ + "AzurePowerShell", + "AzureCLI" + ], + "x-ms-enum": { + "name": "ScriptType", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "DeploymentScriptUpdateParameter": { + "type": "object", + "description": "Deployment script parameters to be updated. ", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags to be updated.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "AzurePowerShellScript": { + "required": [ + "properties" + ], + "type": "object", + "x-ms-discriminator-value": "AzurePowerShell", + "description": "Object model for the Azure PowerShell script.", + "properties": { + "properties": { + "description": "Properties of the Azure PowerShell script object.", + "$ref": "#/definitions/AzurePowerShellScriptProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentScript" + } + ] + }, + "AzurePowerShellScriptProperties": { + "required": [ + "azPowerShellVersion" + ], + "type": "object", + "description": "Properties of the Azure PowerShell script object.", + "properties": { + "azPowerShellVersion": { + "type": "string", + "description": "Azure PowerShell module version to be used." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentScriptPropertiesBase" + }, + { + "$ref": "#/definitions/ScriptConfigurationBase" + } + ] + }, + "AzureCliScript": { + "required": [ + "properties" + ], + "type": "object", + "x-ms-discriminator-value": "AzureCLI", + "description": "Object model for the Azure CLI script.", + "properties": { + "properties": { + "description": "Properties of the Azure CLI script object.", + "$ref": "#/definitions/AzureCliScriptProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentScript" + } + ] + }, + "AzureCliScriptProperties": { + "required": [ + "azCliVersion" + ], + "type": "object", + "description": "Properties of the Azure CLI script object.", + "properties": { + "azCliVersion": { + "type": "string", + "description": "Azure CLI module version to be used." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentScriptPropertiesBase" + }, + { + "$ref": "#/definitions/ScriptConfigurationBase" + } + ] + }, + "ScriptConfigurationBase": { + "required": [ + "retentionInterval" + ], + "type": "object", + "x-ms-external": true, + "description": "Common configuration settings for both Azure PowerShell and Azure CLI scripts.", + "properties": { + "primaryScriptUri": { + "type": "string", + "description": "Uri for the script. This is the entry point for the external script." + }, + "supportingScriptUris": { + "type": "array", + "description": "Supporting files for the external script.", + "items": { + "type": "string", + "description": "Supporting file Uri." + } + }, + "scriptContent": { + "type": "string", + "maxLength": 32000, + "description": "Script body." + }, + "arguments": { + "type": "string", + "description": "Command line arguments to pass to the script. Arguments are separated by spaces. ex: -Name blue* -Location 'West US 2' " + }, + "environmentVariables": { + "description": "The environment variables to pass over to the script.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + } + }, + "forceUpdateTag": { + "type": "string", + "description": "Gets or sets how the deployment script should be forced to execute even if the script resource has not changed. Can be current time stamp or a GUID." + }, + "retentionInterval": { + "type": "string", + "format": "duration", + "description": "Interval for which the service retains the script resource after it reaches a terminal state. Resource will be deleted when this duration expires. Duration is based on ISO 8601 pattern (for example P7D means one week)." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "Maximum allowed script execution time specified in ISO 8601 format. Default value is PT1H" + } + } + }, + "DeploymentScriptPropertiesBase": { + "type": "object", + "x-ms-external": true, + "description": "Common properties for the deployment script.", + "properties": { + "cleanupPreference": { + "type": "string", + "description": "The clean up preference when the script execution gets in a terminal state. Default setting is 'Always'.", + "enum": [ + "Always", + "OnSuccess", + "OnExpiration" + ], + "x-ms-enum": { + "name": "cleanupOptions", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "State of the script execution. This only appears in the response.", + "enum": [ + "Creating", + "ProvisioningResources", + "Running", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ScriptProvisioningState", + "modelAsString": true + } + }, + "status": { + "type": "object", + "readOnly": true, + "description": "Contains the results of script execution.", + "$ref": "#/definitions/ScriptStatus" + }, + "outputs": { + "description": "List of script outputs.", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "object", + "description": "Script output in pair." + } + } + } + }, + "ScriptStatus": { + "type": "object", + "description": "Generic object modeling results of script execution.", + "properties": { + "containerInstanceId": { + "type": "string", + "readOnly": true, + "description": "ACI resource Id." + }, + "storageAccountId": { + "type": "string", + "readOnly": true, + "description": "Storage account resource Id." + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Start time of the script execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "End time of the script execution." + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Time the deployment script resource will expire." + } + } + }, + "ManagedServiceIdentity": { + "type": "object", + "description": "Managed identity generic object.", + "properties": { + "type": { + "type": "string", + "description": "Type of the managed identity.", + "enum": [ + "UserAssigned" + ], + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The list of user-assigned managed identities associated with the resource. Key is the Azure resource Id of the managed identity.", + "additionalProperties": { + "description": "User-assigned managed identity.", + "$ref": "#/definitions/UserAssignedIdentity" + } + } + } + }, + "UserAssignedIdentity": { + "type": "object", + "description": "User-assigned managed identity.", + "properties": { + "principalId": { + "type": "string", + "description": "Azure Active Directory principal ID associated with this identity." + }, + "clientId": { + "type": "string", + "description": "Client App Id associated with this identity." + } + } + }, + "EnvironmentVariable": { + "description": "The environment variable to pass to the script in the container instance.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the environment variable." + }, + "value": { + "type": "string", + "description": "The value of the environment variable." + }, + "secureValue": { + "type": "string", + "description": "The value of the secure environment variable." + } + }, + "required": [ + "name" + ] + }, + "DeploymentScriptListResult": { + "description": "List of deployment scripts.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentScript" + }, + "description": "An array of deployment scripts." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + } + }, + "ScriptLogsList": { + "description": "Deployment script execution logs.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ScriptLog" + }, + "description": "Deployment scripts logs." + } + } + }, + "ScriptLog": { + "type": "object", + "description": "Script execution log object.", + "properties": { + "properties": { + "$ref": "#/definitions/LogProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "LogProperties": { + "type": "object", + "description": "Script log properties.", + "properties": { + "log": { + "type": "string", + "readOnly": true, + "description": "Script execution logs in text format." + } + } + }, + "AzureResourceBase": { + "x-ms-azure-resource": true, + "type": "object", + "description": "Common properties for all Azure resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "String Id used to locate any resource on Azure." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of this resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of this resource." + } + } + }, + "DefaultErrorResponse": { + "description": "The details of the error.", + "type": "object", + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "type": "string" + }, + "message": { + "description": "A human-readable representation of the error.", + "type": "string" + }, + "target": { + "description": "The target of the particular error.", + "type": "string" + }, + "details": { + "description": "Detailed errors.", + "type": "array", + "items": { + "$ref": "#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Subscription Id which forms part of the URI for every service call." + }, + "ScriptNameParameter": { + "name": "scriptName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the deployment script.", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Client Api version." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json new file mode 100644 index 000000000000..2d4156d8e6df --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "deploymentScript": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "PT7D", + "timeout": "PT1H", + "cleanupPreference": "Always" + } + } + }, + "responses": { + "201": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Creating", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + } + } + } + }, + "200": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json new file mode 100644 index 000000000000..9c723a5db962 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "deploymentScript": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "user script body", + "arguments": "user script arguments", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "PT7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "results": { + "aciId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json new file mode 100644 index 000000000000..2229356c8221 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript" + }, + "responses": { + "200": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "retentionInterval": "PT7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + } + } +} + diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json new file mode 100644 index 000000000000..8d8367c9c069 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "log": "script execution stdout/stderr logs" + } + } + ] + } + } + } +} + diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json new file mode 100644 index 000000000000..86afac3c5038 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript" + }, + "responses": { + "200": { + "body": { + "properties": { + "log": "script execution stdout/stderr logs" + } + } + } + } +} + diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json new file mode 100644 index 000000000000..983b4c2c9cc8 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json new file mode 100644 index 000000000000..7e78a294bba4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": + {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "retentionInterval": "PT7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json new file mode 100644 index 000000000000..dc4436f997b4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "deploymentScript": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "retentionInterval": "P7D" + } + } + }, + "responses": { + "201": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Creating", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + } + } + } + }, + "200": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json new file mode 100644 index 000000000000..bddfbbee0d83 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "deploymentScript": { + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": + "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + }, + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": + {} + } + }, + "tags": {} + } + } + } +} diff --git a/specification/resources/resource-manager/readme.csharp.md b/specification/resources/resource-manager/readme.csharp.md index 9eebe1e0c3d4..37177ca9f1ce 100644 --- a/specification/resources/resource-manager/readme.csharp.md +++ b/specification/resources/resource-manager/readme.csharp.md @@ -23,6 +23,7 @@ batch: - package-resources: true - package-subscriptions: true - package-links: true + - package-deploymentscripts: true # - package-managedapplications: true ``` diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 96de4985ec6b..aad371028f57 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -56,6 +56,18 @@ tag: package-links-2016-09 tag: package-managedapplications-2018-06 ``` +``` yaml $(package-deploymentscripts) +tag: package-deploymentscripts-2019-10-preview +``` + +### Tag: package-resources-2019-10-preview +These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. + +``` yaml $(tag) == 'package-deploymentscripts-2019-10-preview' +input-file: +- Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json +``` + ### Tag: package-features-2015-12 These settings apply only when `--tag=package-features-2015-12` is specified on the command line. @@ -452,6 +464,26 @@ directive: from: managedapplications.json where: $.definitions.GenericResource.properties reason: managedBy is a top level property + - from: deploymentScripts.json + suppress: TrackedResourceGetOperation + where: $.definitions.AzureCliScript + reason: Tooling issue. + - from: deploymentScripts.json + suppress: TrackedResourcePatchOperation + where: $.definitions.AzureCliScript + reason: Tooling issue. + - from: deploymentScripts.json + suppress: TrackedResourceGetOperation + where: $.definitions.AzurePowerShellScript + reason: Tooling issue + - from: deploymentScripts.json + suppress: TrackedResourcePatchOperation + where: $.definitions.AzurePowerShellScript + reason: Tooling issue + - from: deploymentScripts.json + suppress: OperationsAPIImplementation + where: $.paths + reason: OperationsAPI will come from Resources ``` --- From 57bd1300c1d280a03d7500d702722d226fc3f84f Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 22 Oct 2019 02:42:12 +0000 Subject: [PATCH 45/54] regenerated all-api-versions --- specification/resources/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index aad371028f57..8398bdb3ab99 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -561,6 +561,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json - $(this-folder)/Microsoft.Features/stable/2015-12-01/features.json - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json - $(this-folder)/Microsoft.Authorization/stable/2015-01-01/locks.json From 5265b9205331da0a55f2d17eb6b436b7d67d1f09 Mon Sep 17 00:00:00 2001 From: bganapa Date: Mon, 21 Oct 2019 20:27:32 -0700 Subject: [PATCH 46/54] Fixing issues in Azurestack admin api specs while running the powershell generator (#7566) --- .../Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json | 2 +- .../preview/2016-05-01/examples/ScaleUnit/ScaleOut.json | 2 +- .../preview/2015-04-01/GalleryItem.json | 2 +- .../preview/2015-04-01/examples/GalleryItem/Create.json | 2 +- .../preview/2015-11-01/Subscriptions.json | 3 --- 5 files changed, 4 insertions(+), 7 deletions(-) diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json index 33d362fa0e25..b61bb0c6bbfb 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json @@ -423,7 +423,7 @@ "x-ms-parameter-location": "method" }, "ScaleOutScaleUnitParametersInBody": { - "name": "nodeList", + "name": "scaleUnitNodeParameters", "description": "A list of input data that allows for adding a set of scale unit nodes.", "in": "body", "required": true, diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ScaleUnit/ScaleOut.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ScaleUnit/ScaleOut.json index 85691ca456d6..80503125961a 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ScaleUnit/ScaleOut.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ScaleUnit/ScaleOut.json @@ -5,7 +5,7 @@ "resourceGroupName": "System.local", "location": "local", "scaleUnit": "S-Cluster", - "nodeList": { + "scaleUnitNodeParameters": { "scaleUnitNode": "N1S2", "bmcIPv4Address": "192.0.0.1" } diff --git a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json index c44c6b48edb1..7a69e8aa17d7 100644 --- a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json +++ b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json @@ -666,7 +666,7 @@ }, "GalleryItemUriPayloadParameter": { "description": "The URI to the gallery item JSON file.", - "name": "galleryItemUri", + "name": "galleryItemUriPayload", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/examples/GalleryItem/Create.json b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/examples/GalleryItem/Create.json index 42b01741e77d..aa3e2c71c21f 100644 --- a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/examples/GalleryItem/Create.json +++ b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/examples/GalleryItem/Create.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "0ff0bbbe-d68d-4314-8f68-80a808b5a6ec", "api-version": "2016-05-01", - "galleryItemUri": "https://github.com/Azure/AzureStack-Tools/raw/master/ComputeAdmin/microsoft.vmss.1.3.6.azpkg" + "galleryItemUriPayload": "https://github.com/Azure/AzureStack-Tools/raw/master/ComputeAdmin/microsoft.vmss.1.3.6.azpkg" }, "responses": { "200": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json index d2ed8205499f..9add0b5d584a 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json @@ -271,9 +271,6 @@ "$ref": "#/definitions/CheckNameAvailabilityResponse" } } - }, - "x-ms-pageable": { - "nextLinkName": null } } }, From ffc9aba60c8fda2191db57f3ba13d0c94f53b605 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 22 Oct 2019 00:30:43 -0400 Subject: [PATCH 47/54] fixing tag package-2019-07-01-only (#7574) --- specification/compute/resource-manager/readme.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 014b11c56231..ca7a874b8fd0 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -240,7 +240,10 @@ These settings apply only when `--tag=package-2019-07-01-only` is specified on t ``` yaml $(tag) == 'package-2019-07-01-only' input-file: +- Microsoft.Compute/stable/2019-07-01/compute.json +- Microsoft.Compute/stable/2019-07-01/disk.json - Microsoft.Compute/stable/2019-07-01/gallery.json +- Microsoft.Compute/stable/2019-07-01/runCommands.json ``` ### Tag: package-2019-03-01 From cf9e1b365a252e3d67e19757b87e0404a0693a94 Mon Sep 17 00:00:00 2001 From: Xiaofang Zhang Date: Mon, 21 Oct 2019 21:41:24 -0700 Subject: [PATCH 48/54] Publish container service 2019-10-01 api version (#7567) * Adds base for updating Microsoft.ContainerService from version stable/2019-08-01 to version 2019-10-01 * Updates readme * Updates API version in new specs and examples * added private FQDN (#7430) * added private FQDN * added example * remove example * updating sdk tags for 2019-10-01 api version (#7550) * updating sdk tags for 2019-10-01 api version * fixing ci errors --- .../examples/AgentPoolsCreate_Update.json | 64 + .../2019-10-01/examples/AgentPoolsDelete.json | 13 + .../2019-10-01/examples/AgentPoolsGet.json | 25 + ...entPoolsGetAgentPoolAvailableVersions.json | 32 + .../examples/AgentPoolsGetUpgradeProfile.json | 27 + .../2019-10-01/examples/AgentPoolsList.json | 28 + .../ManagedClustersCreate_Update.json | 205 ++ .../examples/ManagedClustersDelete.json | 12 + .../examples/ManagedClustersGet.json | 88 + .../ManagedClustersGetAccessProfile.json | 22 + .../ManagedClustersGetUpgradeProfile.json | 49 + .../examples/ManagedClustersList.json | 64 + .../ManagedClustersListByResourceGroup.json | 65 + ...edClustersListClusterCredentialResult.json | 20 + .../ManagedClustersResetAADProfile.json | 18 + ...dClustersResetServicePrincipalProfile.json | 16 + .../examples/ManagedClustersUpdateTags.json | 67 + .../stable/2019-10-01/managedClusters.json | 2308 +++++++++++++++++ .../resource-manager/readme.go.md | 11 + .../resource-manager/readme.java.md | 14 + .../resource-manager/readme.md | 30 +- .../resource-manager/readme.python.md | 12 + 22 files changed, 3186 insertions(+), 4 deletions(-) create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsCreate_Update.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsDelete.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGet.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetUpgradeProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsList.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersCreate_Update.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersDelete.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGet.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetAccessProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetUpgradeProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersList.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListByResourceGroup.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListClusterCredentialResult.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetAADProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetServicePrincipalProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersUpdateTags.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsCreate_Update.json new file mode 100644 index 000000000000..b9ec99ea67df --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsCreate_Update.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Low", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Low", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Low", + "scaleSetEvictionPolicy": "Delete" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsDelete.json new file mode 100644 index 000000000000..fda05b251c90 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGet.json new file mode 100644 index 000000000000..a1ff30d9a1d4 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json new file mode 100644 index 000000000000..5b349e7115d0 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/availableagentpoolversions", + "name": "default", + "properties": { + "agentPoolVersions": [ + { + "kubernetesVersion": "1.12.7" + }, + { + "kubernetesVersion": "1.12.8" + }, + { + "default": true, + "kubernetesVersion": "1.13.5", + "isPreview": true + } + ] + }, + "type": "Microsoft.ContainerService/managedClusters/availableAgentpoolVersions" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetUpgradeProfile.json new file mode 100644 index 000000000000..ba86fc7b293d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsGetUpgradeProfile.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1/upgradeprofiles/default", + "name": "default", + "properties": { + "kubernetesVersion": "1.12.8", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.13.5" + } + ] + }, + "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsList.json new file mode 100644 index 000000000000..4d90083f9af3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/AgentPoolsList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6" + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersCreate_Update.json new file mode 100644 index 000000000000..07aa235153e5 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersCreate_Update.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersDelete.json new file mode 100644 index 000000000000..7c26aba90427 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGet.json new file mode 100644 index 000000000000..10ac63124e48 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGet.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "availabilityZones": [ + "1", + "2", + "3" + ] + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "loadBalancerProfile": { + "outboundIPs": { + "publicIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip2" + } + ] + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetAccessProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetAccessProfile.json new file mode 100644 index 000000000000..0dd88eda99ed --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetAccessProfile.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "roleName": "clusterUser" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser", + "location": "location1", + "name": "clusterUser", + "properties": { + "kubeConfig": "kubeConfig1" + }, + "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetUpgradeProfile.json new file mode 100644 index 000000000000..ac23d3e9e98b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersGetUpgradeProfile.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default", + "name": "default", + "properties": { + "agentPoolProfiles": [ + { + "kubernetesVersion": "1.7.7", + "name": "agent", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.7.9" + }, + { + "kubernetesVersion": "1.7.11", + "isPreview": true + } + ] + } + ], + "controlPlaneProfile": { + "kubernetesVersion": "1.7.7", + "name": "master", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.7.9", + "isPreview": true + }, + { + "kubernetesVersion": "1.7.11" + } + ] + } + }, + "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersList.json new file mode 100644 index 000000000000..8d288130f829 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "maxAgentPools": 1, + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListByResourceGroup.json new file mode 100644 index 000000000000..911ae49db170 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListByResourceGroup.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "maxAgentPools": 1, + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListClusterCredentialResult.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListClusterCredentialResult.json new file mode 100644 index 000000000000..39f059ab1fd0 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersListClusterCredentialResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "credentialValue1" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetAADProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetAADProfile.json new file mode 100644 index 000000000000..3b3150a135de --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetAADProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "clientAppID": "clientappid", + "serverAppID": "serverappid", + "serverAppSecret": "serverappsecret", + "tenantID": "tenantid" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetServicePrincipalProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetServicePrincipalProfile.json new file mode 100644 index 000000000000..86f0075c028c --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersResetServicePrincipalProfile.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "clientId": "clientid", + "secret": "secret" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersUpdateTags.json new file mode 100644 index 000000000000..ceb4cee7ef1b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/examples/ManagedClustersUpdateTags.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "tags": { + "tier": "testing", + "archv3": "" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv3": "", + "tier": "testing" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json new file mode 100644 index 000000000000..8dd47bb44137 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json @@ -0,0 +1,2308 @@ +{ + "swagger": "2.0", + "info": { + "title": "ContainerServiceClient", + "description": "The Container Service Client.", + "version": "2019-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": { + "/providers/Microsoft.ContainerService/operations": { + "get": { + "tags": [ + "managedClusters" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_List", + "summary": "Gets a list of managed clusters in the specified subscription.", + "description": "Gets a list of managed clusters in the specified subscription. The operation returns properties of each managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Managed Clusters": { + "$ref": "./examples/ManagedClustersList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListByResourceGroup", + "summary": "Lists managed clusters in the specified subscription and resource group.", + "description": "Lists managed clusters in the specified subscription and resource group. The operation returns properties of each managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Managed Clusters by Resource Group": { + "$ref": "./examples/ManagedClustersListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetUpgradeProfile", + "summary": "Gets upgrade profile for a managed cluster.", + "description": "Gets the details of the upgrade profile for a managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterUpgradeProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Upgrade Profile for Managed Cluster": { + "$ref": "./examples/ManagedClustersGetUpgradeProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetAccessProfile", + "summary": "Gets an access profile of a managed cluster.", + "description": "Gets the accessProfile for the specified role name of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "roleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role for managed cluster accessProfile resource." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterAccessProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersGetAccessProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterAdminCredentials", + "summary": "Gets cluster admin credential of a managed cluster.", + "description": "Gets cluster admin credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterUserCredentials", + "summary": "Gets cluster user credential of a managed cluster.", + "description": "Gets cluster user credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Get", + "summary": "Gets a managed cluster.", + "description": "Gets the details of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_CreateOrUpdate", + "summary": "Creates or updates a managed cluster.", + "description": "Creates or updates a managed cluster with the specified configuration for agents and Kubernetes version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedCluster" + }, + "description": "Parameters supplied to the Create or Update a Managed Cluster operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create/Update Managed Cluster": { + "$ref": "./examples/ManagedClustersCreate_Update.json" + } + } + }, + "patch": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_UpdateTags", + "summary": "Updates tags on a managed cluster.", + "description": "Updates a managed cluster with the specified tags.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update Managed Cluster Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update Managed Cluster Tags": { + "$ref": "./examples/ManagedClustersUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Delete", + "summary": "Deletes a managed cluster.", + "description": "Deletes the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Managed Cluster": { + "$ref": "./examples/ManagedClustersDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_List", + "summary": "Gets a list of agent pools in the specified managed cluster.", + "description": "Gets a list of agent pools in the specified managed cluster. The operation returns properties of each agent pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Agent Pools by Managed Cluster": { + "$ref": "./examples/AgentPoolsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_Get", + "summary": "Gets the agent pool.", + "description": "Gets the details of the agent pool by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Agent Pool": { + "$ref": "./examples/AgentPoolsGet.json" + } + } + }, + "put": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_CreateOrUpdate", + "summary": "Creates or updates an agent pool.", + "description": "Creates or updates an agent pool in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AgentPool" + }, + "description": "Parameters supplied to the Create or Update an agent pool operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create/Update Agent Pool": { + "$ref": "./examples/AgentPoolsCreate_Update.json" + } + } + }, + "delete": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_Delete", + "summary": "Deletes an agent pool.", + "description": "Deletes the agent pool in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Agent Pool": { + "$ref": "./examples/AgentPoolsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_GetUpgradeProfile", + "summary": "Gets upgrade profile for an agent pool.", + "description": "Gets the details of the upgrade profile for an agent pool with a specified resource group and managed cluster name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolUpgradeProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Upgrade Profile for Agent Pool": { + "$ref": "./examples/AgentPoolsGetUpgradeProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_GetAvailableAgentPoolVersions", + "summary": "Gets a list of supported versions for the specified agent pool.", + "description": "Gets a list of supported versions for the specified agent pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolAvailableVersions" + } + } + }, + "x-ms-examples": { + "Get available versions for agent pool": { + "$ref": "./examples/AgentPoolsGetAgentPoolAvailableVersions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ResetServicePrincipalProfile", + "summary": "Reset Service Principal Profile of a managed cluster.", + "description": "Update the service principal Profile for a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile" + }, + "description": "Parameters supplied to the Reset Service Principal Profile operation for a Managed Cluster." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reset Service Principal Profile": { + "$ref": "./examples/ManagedClustersResetServicePrincipalProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ResetAADProfile", + "summary": "Reset AAD Profile of a managed cluster.", + "description": "Update the AAD Profile for a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterAADProfile" + }, + "description": "Parameters supplied to the Reset AAD Profile operation for a Managed Cluster." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reset AAD Profile": { + "$ref": "./examples/ManagedClustersResetAADProfile.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationValueDisplay", + "description": "Describes the properties of a Compute Operation Value Display." + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "Resource": { + "description": "The Resource model definition.", + "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", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "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" + } + }, + "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." + }, + "ContainerServiceOSDisk": { + "type": "integer", + "format": "int32", + "maximum": 1023, + "minimum": 0, + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "ContainerServiceStorageProfile": { + "type": "string", + "x-ms-enum": { + "name": "ContainerServiceStorageProfileTypes", + "modelAsString": true + }, + "enum": [ + "StorageAccount", + "ManagedDisks" + ], + "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice." + }, + "ContainerServiceVnetSubnetID": { + "type": "string", + "description": "VNet SubnetID specifies the VNet's subnet identifier." + }, + "ContainerServiceVMSize": { + "type": "string", + "x-ms-enum": { + "name": "ContainerServiceVMSizeTypes", + "modelAsString": true + }, + "description": "Size of agent VMs.", + "enum": [ + "Standard_A1", + "Standard_A10", + "Standard_A11", + "Standard_A1_v2", + "Standard_A2", + "Standard_A2_v2", + "Standard_A2m_v2", + "Standard_A3", + "Standard_A4", + "Standard_A4_v2", + "Standard_A4m_v2", + "Standard_A5", + "Standard_A6", + "Standard_A7", + "Standard_A8", + "Standard_A8_v2", + "Standard_A8m_v2", + "Standard_A9", + "Standard_B2ms", + "Standard_B2s", + "Standard_B4ms", + "Standard_B8ms", + "Standard_D1", + "Standard_D11", + "Standard_D11_v2", + "Standard_D11_v2_Promo", + "Standard_D12", + "Standard_D12_v2", + "Standard_D12_v2_Promo", + "Standard_D13", + "Standard_D13_v2", + "Standard_D13_v2_Promo", + "Standard_D14", + "Standard_D14_v2", + "Standard_D14_v2_Promo", + "Standard_D15_v2", + "Standard_D16_v3", + "Standard_D16s_v3", + "Standard_D1_v2", + "Standard_D2", + "Standard_D2_v2", + "Standard_D2_v2_Promo", + "Standard_D2_v3", + "Standard_D2s_v3", + "Standard_D3", + "Standard_D32_v3", + "Standard_D32s_v3", + "Standard_D3_v2", + "Standard_D3_v2_Promo", + "Standard_D4", + "Standard_D4_v2", + "Standard_D4_v2_Promo", + "Standard_D4_v3", + "Standard_D4s_v3", + "Standard_D5_v2", + "Standard_D5_v2_Promo", + "Standard_D64_v3", + "Standard_D64s_v3", + "Standard_D8_v3", + "Standard_D8s_v3", + "Standard_DS1", + "Standard_DS11", + "Standard_DS11_v2", + "Standard_DS11_v2_Promo", + "Standard_DS12", + "Standard_DS12_v2", + "Standard_DS12_v2_Promo", + "Standard_DS13", + "Standard_DS13-2_v2", + "Standard_DS13-4_v2", + "Standard_DS13_v2", + "Standard_DS13_v2_Promo", + "Standard_DS14", + "Standard_DS14-4_v2", + "Standard_DS14-8_v2", + "Standard_DS14_v2", + "Standard_DS14_v2_Promo", + "Standard_DS15_v2", + "Standard_DS1_v2", + "Standard_DS2", + "Standard_DS2_v2", + "Standard_DS2_v2_Promo", + "Standard_DS3", + "Standard_DS3_v2", + "Standard_DS3_v2_Promo", + "Standard_DS4", + "Standard_DS4_v2", + "Standard_DS4_v2_Promo", + "Standard_DS5_v2", + "Standard_DS5_v2_Promo", + "Standard_E16_v3", + "Standard_E16s_v3", + "Standard_E2_v3", + "Standard_E2s_v3", + "Standard_E32-16s_v3", + "Standard_E32-8s_v3", + "Standard_E32_v3", + "Standard_E32s_v3", + "Standard_E4_v3", + "Standard_E4s_v3", + "Standard_E64-16s_v3", + "Standard_E64-32s_v3", + "Standard_E64_v3", + "Standard_E64s_v3", + "Standard_E8_v3", + "Standard_E8s_v3", + "Standard_F1", + "Standard_F16", + "Standard_F16s", + "Standard_F16s_v2", + "Standard_F1s", + "Standard_F2", + "Standard_F2s", + "Standard_F2s_v2", + "Standard_F32s_v2", + "Standard_F4", + "Standard_F4s", + "Standard_F4s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", + "Standard_F8", + "Standard_F8s", + "Standard_F8s_v2", + "Standard_G1", + "Standard_G2", + "Standard_G3", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS4-4", + "Standard_GS4-8", + "Standard_GS5", + "Standard_GS5-16", + "Standard_GS5-8", + "Standard_H16", + "Standard_H16m", + "Standard_H16mr", + "Standard_H16r", + "Standard_H8", + "Standard_H8m", + "Standard_L16s", + "Standard_L32s", + "Standard_L4s", + "Standard_L8s", + "Standard_M128-32ms", + "Standard_M128-64ms", + "Standard_M128ms", + "Standard_M128s", + "Standard_M64-16ms", + "Standard_M64-32ms", + "Standard_M64ms", + "Standard_M64s", + "Standard_NC12", + "Standard_NC12s_v2", + "Standard_NC12s_v3", + "Standard_NC24", + "Standard_NC24r", + "Standard_NC24rs_v2", + "Standard_NC24rs_v3", + "Standard_NC24s_v2", + "Standard_NC24s_v3", + "Standard_NC6", + "Standard_NC6s_v2", + "Standard_NC6s_v3", + "Standard_ND12s", + "Standard_ND24rs", + "Standard_ND24s", + "Standard_ND6s", + "Standard_NV12", + "Standard_NV24", + "Standard_NV6" + ] + }, + "ManagedClusterServicePrincipalProfile": { + "properties": { + "clientId": { + "type": "string", + "description": "The ID for the service principal." + }, + "secret": { + "type": "string", + "description": "The secret password associated with the service principal in plain text." + } + }, + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.", + "required": [ + "clientId" + ] + }, + "ContainerServiceMasterProfile": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "enum": [ + 1, + 3, + 5 + ], + "x-ms-enum": { + "name": "Count", + "modelAsString": false + }, + "description": "Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1.", + "default": 1 + }, + "dnsPrefix": { + "type": "string", + "description": "DNS prefix to be used to create the FQDN for the master pool." + }, + "vmSize": { + "$ref": "#/definitions/ContainerServiceVMSize", + "description": "Size of agent VMs." + }, + "osDiskSizeGB": { + "$ref": "#/definitions/ContainerServiceOSDisk", + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "vnetSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "VNet SubnetID specifies the VNet's subnet identifier." + }, + "firstConsecutiveStaticIP": { + "type": "string", + "description": "FirstConsecutiveStaticIP used to specify the first static ip of masters.", + "default": "10.240.255.5" + }, + "storageProfile": { + "$ref": "#/definitions/ContainerServiceStorageProfile", + "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice." + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool." + } + }, + "required": [ + "dnsPrefix", + "vmSize" + ], + "description": "Profile for the container service master." + }, + "ManagedClusterAgentPoolProfileProperties": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "maximum": 100, + "minimum": 1, + "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ", + "default": 1 + }, + "vmSize": { + "$ref": "#/definitions/ContainerServiceVMSize", + "description": "Size of agent VMs." + }, + "osDiskSizeGB": { + "$ref": "#/definitions/ContainerServiceOSDisk", + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "vnetSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "VNet SubnetID specifies the VNet's subnet identifier." + }, + "maxPods": { + "type": "integer", + "format": "int32", + "description": "Maximum number of pods that can run on a node." + }, + "osType": { + "$ref": "#/definitions/OSType", + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "maxCount": { + "type": "integer", + "format": "int32", + "description": "Maximum number of nodes for auto-scaling" + }, + "minCount": { + "type": "integer", + "format": "int32", + "description": "Minimum number of nodes for auto-scaling" + }, + "enableAutoScaling": { + "type": "boolean", + "description": "Whether to enable auto-scaler" + }, + "type": { + "$ref": "#/definitions/AgentPoolType", + "description": "AgentPoolType represents types of an agent pool" + }, + "orchestratorVersion": { + "type": "string", + "description": "Version of orchestrator specified when creating the managed cluster." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + }, + "availabilityZones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(PREVIEW) Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType." + }, + "enableNodePublicIP": { + "type": "boolean", + "description": "Enable public IP for nodes" + }, + "scaleSetPriority": { + "$ref": "#/definitions/ScaleSetPriority", + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." + }, + "scaleSetEvictionPolicy": { + "$ref": "#/definitions/ScaleSetEvictionPolicy", + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for low priority virtual machine scale set. Default to Delete." + }, + "nodeTaints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + } + }, + "required": [ + "vmSize", + "count" + ], + "description": "Properties for the container service agent pool profile." + }, + "ManagedClusterAgentPoolProfile": { + "allOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "properties": { + "name": { + "type": "string", + "description": "Unique name of the agent pool profile in the context of the subscription and resource group.", + "pattern": "^[a-z][a-z0-9]{0,11}$" + } + } + } + ], + "required": [ + "name" + ], + "description": "Profile for the container service agent pool." + }, + "AgentPoolType": { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ], + "x-ms-enum": { + "name": "AgentPoolType", + "modelAsString": true + }, + "description": "AgentPoolType represents types of an agent pool. VirtualMachineScaleSets type is still in PREVIEW." + }, + "AgentPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AgentPool" + }, + "description": "The list of agent pools." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of agent pool results.", + "readOnly": true + } + }, + "description": "The response from the List Agent Pools operation." + }, + "AgentPool": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "properties": { + "properties": { + "description": "Properties of an agent pool.", + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties", + "x-ms-client-flatten": true + } + } + } + ], + "description": "Agent Pool." + }, + "ManagedClusterWindowsProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "The administrator username to use for Windows VMs.", + "pattern": "^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$" + }, + "adminPassword": { + "type": "string", + "description": "The administrator password to use for Windows VMs.", + "pattern": "^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\\^&\\*\\(\\)])[a-zA-Z\\d!@#$%\\^&\\*\\(\\)]{12,123}$" + } + }, + "required": [ + "adminUsername" + ], + "description": "Profile for Windows VMs in the container service cluster." + }, + "ContainerServiceLinuxProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "The administrator username to use for Linux VMs.", + "pattern": "^[A-Za-z][-A-Za-z0-9_]*$" + }, + "ssh": { + "$ref": "#/definitions/ContainerServiceSshConfiguration", + "description": "SSH configuration for Linux-based VMs running on Azure." + } + }, + "required": [ + "adminUsername", + "ssh" + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "ContainerServiceNetworkProfile": { + "properties": { + "networkPlugin": { + "type": "string", + "enum": [ + "azure", + "kubenet" + ], + "default": "kubenet", + "x-ms-enum": { + "name": "NetworkPlugin", + "modelAsString": true + }, + "description": "Network plugin used for building Kubernetes network." + }, + "networkPolicy": { + "type": "string", + "enum": [ + "calico", + "azure" + ], + "x-ms-enum": { + "name": "NetworkPolicy", + "modelAsString": true + }, + "description": "Network policy used for building Kubernetes network." + }, + "podCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.244.0.0/16", + "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used." + }, + "serviceCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.0.0.0/16", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges." + }, + "dnsServiceIP": { + "type": "string", + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "default": "10.0.0.10", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr." + }, + "dockerBridgeCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "172.17.0.1/16", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range." + }, + "loadBalancerSku": { + "type": "string", + "enum": [ + "standard", + "basic" + ], + "x-ms-enum": { + "name": "loadBalancerSku", + "modelAsString": true + }, + "description": "The load balancer sku for the managed cluster." + }, + "loadBalancerProfile": { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfile", + "description": "Profile of the cluster load balancer." + } + }, + "description": "Profile of network configuration." + }, + "ManagedClusterLoadBalancerProfile": { + "properties": { + "managedOutboundIPs": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "maximum": 100, + "minimum": 1, + "description": "Desired number of outbound IP created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ", + "default": 1 + } + }, + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "outboundIPPrefixes": { + "properties": { + "publicIPPrefixes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "A list of public IP prefix resources." + } + }, + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "outboundIPs": { + "properties": { + "publicIPs": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "A list of public IP resources." + } + }, + "description": "Desired outbound IP resources for the cluster load balancer." + }, + "effectiveOutboundIPs": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "The effective outbound IP resources of the cluster load balancer." + } + }, + "description": "Profile of the managed cluster load balancer" + }, + "ResourceReference": { + "properties": { + "id": { + "type": "string", + "description": "The fully qualified Azure resource id." + } + }, + "description": "A reference to an Azure resource." + }, + "ContainerServiceSshConfiguration": { + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerServiceSshPublicKey" + }, + "description": "The list of SSH public keys used to authenticate with Linux-based VMs. Only expect one key specified." + } + }, + "description": "SSH configuration for Linux-based VMs running on Azure.", + "required": [ + "publicKeys" + ] + }, + "ContainerServiceSshPublicKey": { + "properties": { + "keyData": { + "type": "string", + "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers." + } + }, + "required": [ + "keyData" + ], + "description": "Contains information about SSH certificate public key data." + }, + "ContainerServiceDiagnosticsProfile": { + "properties": { + "vmDiagnostics": { + "$ref": "#/definitions/ContainerServiceVMDiagnostics", + "description": "Profile for diagnostics on the container service VMs." + } + }, + "description": "Profile for diagnostics on the container service cluster.", + "required": [ + "vmDiagnostics" + ] + }, + "ContainerServiceVMDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the VM diagnostic agent is provisioned on the VM." + }, + "storageUri": { + "readOnly": true, + "type": "string", + "description": "The URI of the storage account where diagnostics are stored." + } + }, + "description": "Profile for diagnostics on the container service VMs.", + "required": [ + "enabled" + ] + }, + "ManagedClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedCluster" + }, + "description": "The list of managed clusters." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of managed cluster results.", + "readOnly": true + } + }, + "description": "The response from the List Managed Clusters operation." + }, + "ManagedCluster": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "properties": { + "properties": { + "description": "Properties of a managed cluster.", + "$ref": "#/definitions/ManagedClusterProperties", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ManagedClusterIdentity", + "description": "The identity of the managed cluster, if configured." + } + } + } + ], + "description": "Managed cluster." + }, + "ManagedClusterProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + }, + "maxAgentPools": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The max number of agent pools for the managed cluster." + }, + "kubernetesVersion": { + "type": "string", + "description": "Version of Kubernetes specified when creating the managed cluster." + }, + "dnsPrefix": { + "type": "string", + "description": "DNS prefix specified when creating the managed cluster." + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool." + }, + "privateFQDN": { + "readOnly": true, + "type": "string", + "description": "FQDN of private cluster." + }, + "agentPoolProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterAgentPoolProfile" + }, + "description": "Properties of the agent pool." + }, + "linuxProfile": { + "$ref": "#/definitions/ContainerServiceLinuxProfile", + "description": "Profile for Linux VMs in the container service cluster." + }, + "windowsProfile": { + "$ref": "#/definitions/ManagedClusterWindowsProfile", + "description": "Profile for Windows VMs in the container service cluster." + }, + "servicePrincipalProfile": { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile", + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "addonProfiles": { + "additionalProperties": { + "$ref": "#/definitions/ManagedClusterAddonProfile" + }, + "description": "Profile of managed cluster add-on." + }, + "nodeResourceGroup": { + "type": "string", + "description": "Name of the resource group containing agent pool nodes." + }, + "enableRBAC": { + "type": "boolean", + "description": "Whether to enable Kubernetes Role-Based Access Control." + }, + "enablePodSecurityPolicy": { + "type": "boolean", + "description": "(PREVIEW) Whether to enable Kubernetes Pod security policy." + }, + "networkProfile": { + "$ref": "#/definitions/ContainerServiceNetworkProfile", + "description": "Profile of network configuration." + }, + "aadProfile": { + "$ref": "#/definitions/ManagedClusterAADProfile", + "description": "Profile of Azure Active Directory configuration." + }, + "apiServerAccessProfile": { + "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile", + "description": "Access profile for managed cluster API server." + } + }, + "description": "Properties of the managed cluster." + }, + "ManagedClusterAPIServerAccessProfile": { + "properties": { + "authorizedIPRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Authorized IP Ranges to kubernetes API server." + }, + "enablePrivateCluster": { + "type": "boolean", + "description": "Whether to create the cluster as a private cluster or not." + } + }, + "description": "Access profile for managed cluster API server." + }, + "ManagedClusterIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity which is used by master components." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity which is used by master components." + }, + "type": { + "type": "string", + "description": "The type of identity used for the managed cluster. Type 'SystemAssigned' will use an implicitly created identity in master components and an auto-created user assigned identity in MC_ resource group in agent nodes. Type 'None' will not use MSI for the managed cluster, service principal will be used instead.", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the managed cluster." + }, + "ManagedClusterAccessProfile": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "properties": { + "properties": { + "description": "AccessProfile of a managed cluster.", + "$ref": "#/definitions/AccessProfile", + "x-ms-client-flatten": true + } + } + } + ], + "description": "Managed cluster Access Profile.", + "x-ms-azure-resource": false + }, + "AccessProfile": { + "type": "object", + "properties": { + "kubeConfig": { + "type": "string", + "format": "byte", + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "Profile for enabling a user to access a managed cluster." + }, + "ManagedClusterPoolUpgradeProfile": { + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "name": { + "type": "string", + "description": "Pool name." + }, + "osType": { + "$ref": "#/definitions/OSType", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "ContainerServiceOSTypes", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "upgrades": { + "type": "array", + "items": { + "type": "object", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of orchestrator types and versions available for upgrade." + } + }, + "required": [ + "kubernetesVersion", + "osType" + ], + "description": "The list of available upgrade versions." + }, + "ManagedClusterUpgradeProfileProperties": { + "properties": { + "controlPlaneProfile": { + "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile", + "description": "The list of available upgrade versions for the control plane." + }, + "agentPoolProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile" + }, + "description": "The list of available upgrade versions for agent pools." + } + }, + "required": [ + "controlPlaneProfile", + "agentPoolProfiles" + ], + "description": "Control plane and agent pool upgrade profiles." + }, + "ManagedClusterAADProfile": { + "properties": { + "clientAppID": { + "type": "string", + "description": "The client AAD application ID." + }, + "serverAppID": { + "type": "string", + "description": "The server AAD application ID." + }, + "serverAppSecret": { + "type": "string", + "description": "The server AAD application secret." + }, + "tenantID": { + "type": "string", + "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." + } + }, + "required": [ + "clientAppID", + "serverAppID" + ], + "description": "AADProfile specifies attributes for Azure Active Directory integration." + }, + "ManagedClusterAddonProfile": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the add-on is enabled or not." + }, + "config": { + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs for configuring an add-on." + } + }, + "required": [ + "enabled" + ], + "description": "A Kubernetes add-on profile for a managed cluster." + }, + "ManagedClusterUpgradeProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of upgrade profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of upgrade profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of upgrade profile." + }, + "properties": { + "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties", + "description": "Properties of upgrade profile.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available upgrades for compute pools." + }, + "AgentPoolUpgradeProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the agent pool upgrade profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the agent pool upgrade profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the agent pool upgrade profile." + }, + "properties": { + "$ref": "#/definitions/AgentPoolUpgradeProfileProperties", + "description": "Properties of agent pool upgrade profile.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available upgrades for an agent pool." + }, + "AgentPoolUpgradeProfileProperties": { + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "osType": { + "$ref": "#/definitions/OSType", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "ContainerServiceOSTypes", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "upgrades": { + "type": "array", + "items": { + "type": "object", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of orchestrator types and versions available for upgrade." + } + }, + "required": [ + "kubernetesVersion", + "osType" + ], + "description": "The list of available upgrade versions." + }, + "AgentPoolAvailableVersions": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the agent pool available versions." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the agent pool available versions." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the agent pool available versions." + }, + "properties": { + "$ref": "#/definitions/AgentPoolAvailableVersionsProperties", + "description": "Properties of agent pool available versions.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available versions for an agent pool." + }, + "AgentPoolAvailableVersionsProperties": { + "properties": { + "agentPoolVersions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "default": { + "type": "boolean", + "description": "Whether this version is the default agent pool version." + }, + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of versions available for agent pool." + } + }, + "description": "The list of available agent pool versions." + }, + "OSType": { + "type": "string", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OSType", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "ScaleSetPriority": { + "type": "string", + "default": "Regular", + "enum": [ + "Low", + "Regular" + ], + "x-ms-enum": { + "name": "ScaleSetPriority", + "modelAsString": true + }, + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." + }, + "ScaleSetEvictionPolicy": { + "type": "string", + "default": "Delete", + "enum": [ + "Delete", + "Deallocate" + ], + "x-ms-enum": { + "name": "ScaleSetEvictionPolicy", + "modelAsString": true + }, + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for low priority virtual machine scale set. Default to Delete." + }, + "CredentialResults": { + "properties": { + "kubeconfigs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CredentialResult" + }, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The list of credential result response." + }, + "CredentialResult": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the credential." + }, + "value": { + "type": "string", + "format": "byte", + "readOnly": true, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The credential result response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Details about the error." + } + }, + "description": "An error response from the Container 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 Container service." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version.", + "x-ms-parameter-location": "client" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "description": "The name of the managed cluster resource.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/containerservice/resource-manager/readme.go.md b/specification/containerservice/resource-manager/readme.go.md index a0cc0ff00cc0..e7a22a8c40cd 100644 --- a/specification/containerservice/resource-manager/readme.go.md +++ b/specification/containerservice/resource-manager/readme.go.md @@ -12,6 +12,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-10 - tag: package-2019-08 - tag: package-2019-06 - tag: package-2019-04 @@ -25,6 +26,16 @@ batch: - tag: package-2017-07 ``` +### Tag: package-2019-10 and go + +These settings apply only when `--package-2019-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2019-10' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-10-01/$(namespace) +``` + ### Tag: package-2019-08 and go These settings apply only when `--package-2019-08 --go` is specified on the command line. diff --git a/specification/containerservice/resource-manager/readme.java.md b/specification/containerservice/resource-manager/readme.java.md index 91bf924baddb..db0817bb4df1 100644 --- a/specification/containerservice/resource-manager/readme.java.md +++ b/specification/containerservice/resource-manager/readme.java.md @@ -18,6 +18,20 @@ description: "Container Service Client" batch: - tag: package-2019-06 - tag: package-2019-08 + - tag: package-2019-10 +``` + +### Tag: package-2019-10 and java + +These settings apply only when `--tag=package-2019-10` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-10' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2019_10_01 + output-folder: $(azure-libraries-for-java-folder)/containerservice/resource-manager/v2019_10_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2019-08 and java diff --git a/specification/containerservice/resource-manager/readme.md b/specification/containerservice/resource-manager/readme.md index b641c3f5375d..d151926f9d4d 100644 --- a/specification/containerservice/resource-manager/readme.md +++ b/specification/containerservice/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the ContainerServices API. ``` yaml openapi-type: arm -tag: package-2019-08 +tag: package-2019-10 ``` ### Tag: package-2019-09-30-preview @@ -50,6 +50,17 @@ input-file: ``` +### Tag: package-2019-10 + +These settings apply only when `--tag=package-2019-10` is specified on the command line. + +```yaml $(tag) == 'package-2019-10' +input-file: + - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json + - Microsoft.ContainerService/stable/2017-07-01/containerService.json + - Microsoft.ContainerService/stable/2019-08-01/location.json + - Microsoft.ContainerService/stable/2019-10-01/managedClusters.json +``` ### Tag: package-2019-08 These settings apply only when `--tag=package-2019-08` is specified on the command line. @@ -61,6 +72,7 @@ input-file: - Microsoft.ContainerService/stable/2019-08-01/location.json - Microsoft.ContainerService/stable/2019-08-01/managedClusters.json ``` + ### Tag: package-2019-06 These settings apply only when `--tag=package-2019-06` is specified on the command line. @@ -162,6 +174,15 @@ input-file: - Microsoft.ContainerService/stable/2017-07-01/containerService.json ``` +### Tag: package-2019-10-01-only + +These settings apply only when `--tag=package-2019-10-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10-01-only' +input-file: +- Microsoft.ContainerService/stable/2019-10-01/managedClusters.json +``` + ### Tag: package-2019-08-01-only These settings apply only when `--tag=package-2019-08-01-only` is specified on the command line. @@ -361,7 +382,7 @@ directive: reason: ACS service is deprecated so a PATCH endpoint won't be implemented ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -374,6 +395,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.ContainerService/preview/2019-09-30/openShiftManagedClusters.json + - $(this-folder)/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json + - $(this-folder)/Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2017-07-01/containerService.json - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/location.json @@ -394,11 +417,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/containerservice/resource-manager/readme.python.md b/specification/containerservice/resource-manager/readme.python.md index 5e21eda2ecea..0c8ffda066ae 100644 --- a/specification/containerservice/resource-manager/readme.python.md +++ b/specification/containerservice/resource-manager/readme.python.md @@ -18,6 +18,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2019-10-01-only - tag: package-2019-08-01-only - tag: package-2019-06-01-only - tag: package-2019-04-30-only @@ -29,6 +30,17 @@ batch: - tag: package-2018-03-only - tag: package-2017-07-only-extended ``` +### Tag: package-2019-10-01-only and python + +These settings apply only when `--tag=package-2019-10-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-10-01-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2019_10_01 + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_10_01 +``` + ### Tag: package-2019-08-01-only and python These settings apply only when `--tag=package-2019-08-01-only --python` is specified on the command line. From 2fefd59d920a674c15af305118e5c3bf7eff4c90 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 22 Oct 2019 00:41:39 -0400 Subject: [PATCH 49/54] updates for network experiment (#7573) --- .../frontdoor/resource-manager/readme.cli.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/specification/frontdoor/resource-manager/readme.cli.md b/specification/frontdoor/resource-manager/readme.cli.md index a0c957b466f6..7b3c26c82553 100644 --- a/specification/frontdoor/resource-manager/readme.cli.md +++ b/specification/frontdoor/resource-manager/readme.cli.md @@ -4,19 +4,21 @@ These settings apply only when `--cli` is specified on the command line. ``` yaml $(cli) cli: - cli-name: networkexperiment + cli-name: internet-analyzer namespace: azure.mgmt.frontdoor package-name: azure-mgmt-frontdoor debug: false cmd-override: "^.*frontdoor.*$": "-" - "^.*[/]networkexperimentprofiles([/][^/]*)?$": "networkexperiment profiles" - "^.*[/]networkexperimentprofiles[/].*[/]preconfiguredendpoints[/].*$": "networkexperiment profile preconfiguredendpoint" - "^.*[/]networkexperimentprofiles[/].*[/]experiments[/]([/][^/]*)?$": "networkexperiment profile experiment" - "^.*[/]networkexperimentprofiles[/].*[/]experiments[/].*[/]latencyscorecard$": "networkexperiment profile experiment latencyscorecard" - "^.*[/]networkexperimentprofiles[/].*[/]experiments[/].*[/]timeseries$": "networkexperiment profile experiment timeseries" + "^.*[/]networkexperimentprofiles([/][^/]*)?$": "internet-analyzer profile" + "^.*[/]networkexperimentprofiles[/].*[/]preconfiguredendpoints[/].*$": "internet-analyzer profile preconfigured-endpoint" + "^.*[/]networkexperimentprofiles[/].*[/]experiments[/]([/][^/]*)?$": "internet-analyzer profile experiment" + "^.*[/]networkexperimentprofiles[/].*[/]experiments[/].*[/]latencyscorecard$": "internet-analyzer profile experiment latency-scorecard" + "^.*[/]networkexperimentprofiles[/].*[/]experiments[/].*[/]timeseries$": "internet-analyzer profile experiment timeseries" adjustments: "/sku": "Sku*/" + "/properties/endpointa": "endpointA_*/" + "/properties/endpointb": "endpointB_*/" test-setup: - name: Create or Update a service with all parameters ``` From a3a1a3b96bfcd4a10f2802b26c42194d0f83d133 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 22 Oct 2019 00:44:30 -0400 Subject: [PATCH 50/54] scope assignmens override + flatten all (#7571) --- specification/managednetwork/resource-manager/readme.cli.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/specification/managednetwork/resource-manager/readme.cli.md b/specification/managednetwork/resource-manager/readme.cli.md index 31ea0f7ae092..ffc074b777d1 100644 --- a/specification/managednetwork/resource-manager/readme.cli.md +++ b/specification/managednetwork/resource-manager/readme.cli.md @@ -8,8 +8,9 @@ cli: namespace: azure.mgmt.managednetwork package-name: azure-mgmt-managednetwork debug: true - adjustments: - "/sku": "Sku*/" + cmd-override: + "^.*[/]microsoft.managednetwork/scopeassignments([/][^/]*)?$": "managednetwork scope-assignment" + flatten-all: true test-setup: - name: Create or Update a service with all parameters ``` From eb7b04cef4757c75d3c0fe2e3741608f4804812f Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 22 Oct 2019 04:50:45 +0000 Subject: [PATCH 51/54] regenerated all-api-versions --- specification/containerservice/resource-manager/readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/containerservice/resource-manager/readme.md b/specification/containerservice/resource-manager/readme.md index d151926f9d4d..d38e96683f60 100644 --- a/specification/containerservice/resource-manager/readme.md +++ b/specification/containerservice/resource-manager/readme.md @@ -395,12 +395,11 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.ContainerService/preview/2019-09-30/openShiftManagedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2017-07-01/containerService.json - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/location.json - $(this-folder)/Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json + - $(this-folder)/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2019-06-01/location.json - $(this-folder)/Microsoft.ContainerService/stable/2019-06-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2019-04-01/managedClusters.json From bb46c8b3666c1f607dcf9ee209accdb56e694dd8 Mon Sep 17 00:00:00 2001 From: Ruoxuan Wang <52271048+ruowan@users.noreply.github.com> Date: Tue, 22 Oct 2019 14:06:23 +0800 Subject: [PATCH 52/54] remove 5days email notification (#7576) --- .github/sla.yml | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/.github/sla.yml b/.github/sla.yml index 832adeb0572d..8e79d8c1d9a3 100644 --- a/.github/sla.yml +++ b/.github/sla.yml @@ -11,18 +11,6 @@ description: "None initial response in 48 hours. For public repo." name: "[PUBLIC] initial response notification" -- scheduleTask: - action: sendEmailToAssignee - repoWhitelist: - - Azure/azure-rest-api-specs - args: - booleanFilterExpression: "!(WaitForARMFeedback||WaitingForAzureAPIBoard)" - limit: 5d - message: '

    Dear Swagger reviewer,

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



    Quick info.
    • If no response from ARM review board, please send email to armapireview@microsoft.com.
    • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
    • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
    • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
    • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
    • Pls refer to Swagger review process (onenote) for more about Swagger review process.
    Best regards,
    Azure Management Experience

    ' - subject: "Action Required: Please respond to PR ${PR_URL}" - description: "None update in PR in 5 days" - name: "[PUBLIC] no update over 5 days notification" - - scheduleTask: action: sendEmailToAssignee repoWhitelist: @@ -35,18 +23,6 @@ description: "None initial response in 48 hours. For private repo." name: "[PRIVATE] initial response notification" -- scheduleTask: - action: sendEmailToAssignee - repoWhitelist: - - Azure/azure-rest-api-specs-pr - args: - booleanFilterExpression: "!(WaitForARMFeedback||WaitingForAzureAPIBoard||Approved-OkToMerge)" - limit: 5d - message: '

    Dear Swagger reviewer,

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



    Quick info.
    • If no response from ARM review board, please send email to armapireview@microsoft.com.
    • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
    • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
    • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
    • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
    • Pls refer to Swagger review process (onenote) for more about Swagger review process.
    Best regards,
    Azure Management Experience

    ' - subject: "Action Required: Please respond to PR ${PR_URL}" - description: "None update in PR in 5 days. For private repo" - name: "[PRIVATE] no update over 5 days notification" - - scheduleTask: action: sendEmail repoWhitelist: @@ -55,7 +31,7 @@ booleanFilterExpression: "(WaitForARMFeedback&&!ARMSignedOff&&!ARMChangesRequested&&!ARMReviewInProgress)" limit: 3d subject: "Action Required: Please help to review PR ${PR_URL}" - message: "

    Dear ARM review board,

    Please review PR ${PR_URL}, the PR is waiting for ARM review over 3 days. Thanks.



    Quick info
    • If you have feedback about the notification email, please contact us at vscswagger@microsoft.com.
    • After reviewing, please remove “WaitForARMFeedback” label from PR to correct state.
    Best regards,
    Azure Management Experience

    " + message: "

    Dear ARM review board,

    Please review PR ${PR_URL}, the PR is waiting for ARM review over 3 days. Thanks.



    Quick info
    • If you have feedback about the notification email, please contact us at vscswagger@microsoft.com.
    • After reviewing, please remove “WaitForARMFeedback” label from PR to avoid receiving notification on the same PR.
    • Please do not reply to this email, this is an automatic generated email.
    Best regards,
    Azure Management Experience

    " to: yungez@microsoft.com description: "send email to ARM team for over 5 days PRs labelled with WaitForARMFeedback" name: "send email to ARM team" From 282efa7dd8301ba615d8741f740f1ed7f500fed1 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 22 Oct 2019 02:44:00 -0400 Subject: [PATCH 53/54] updating peering cli structure (#7572) --- specification/peering/resource-manager/readme.cli.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/specification/peering/resource-manager/readme.cli.md b/specification/peering/resource-manager/readme.cli.md index c66182e19bdc..41d6935be811 100644 --- a/specification/peering/resource-manager/readme.cli.md +++ b/specification/peering/resource-manager/readme.cli.md @@ -8,8 +8,13 @@ cli: cmd-override: "^.*[/]peerasns[/].*$": "peering asn" "^.*[/]peerings[/].*$": "peering" + "^.*[/]legacypeerings$": "peering legacy" + "^.*[/]peeringlocations$": "peering location" + "^.*[/]peeringservicelocations$": "peering service location" + "^.*[/]peeringserviceproviders$": "peering service provider" "^.*[/]peeringservices([/][^/]*)?$": "peering service" "^.*[/]peeringservices[/].*prefixes.*$": "peering service prefix" + "^.*[/]operations$": "-" namespace: azure.mgmt.peering package-name: azure-mgmt-peering debug: true From b9f5e7131c27c7e9f1bf2a48d1a3a0f0fa118841 Mon Sep 17 00:00:00 2001 From: Yung-Shin Lin Date: Mon, 21 Oct 2019 23:51:36 -0700 Subject: [PATCH 54/54] Remove language as a parameter --- .../preview/v2.0/FormRecognizer.json | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index b7a116579f34..c8d731724ddc 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -412,9 +412,6 @@ "application/json" ], "parameters": [ - { - "$ref": "#/parameters/OcrLanguage" - }, { "$ref": "#/parameters/FileStream" } @@ -1378,22 +1375,6 @@ "in": "path", "x-ms-skip-url-encoding": true }, - "OcrLanguage": { - "name": "language", - "in": "query", - "description": "The BCP-47 language code of the text to be detected in the image.", - "required": true, - "x-ms-parameter-location": "method", - "type": "string", - "x-ms-enum": { - "name": "Language", - "modelAsString": true - }, - "enum": [ - "en", - "es" - ] - }, "FileStream": { "name": "fileStream", "description": ".json, .pdf, .jpg, .png or .tiff type file stream.",