diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_CreateDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_CreateDnsServices.json new file mode 100644 index 000000000000..83ff8f278a69 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_CreateDnsServices.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1", + "workloadNetworkDnsService": { + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "dnsService1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "dnsService1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_CreateDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_CreateDnsZones.json new file mode 100644 index 000000000000..ba9084df4d6c --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_CreateDnsZones.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1", + "workloadNetworkDnsZone": { + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "dnsZone1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "dnsZone1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_DeleteDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_DeleteDnsServices.json new file mode 100644 index 000000000000..7deae17537be --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_DeleteDnsServices.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_DeleteDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_DeleteDnsZones.json new file mode 100644 index 000000000000..b7ca4b5832cc --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_DeleteDnsZones.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_GetDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_GetDnsServices.json new file mode 100644 index 000000000000..112d7c079f00 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_GetDnsServices.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_GetDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_GetDnsZones.json new file mode 100644 index 000000000000..44fc13f11810 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_GetDnsZones.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_ListDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_ListDnsServices.json new file mode 100644 index 000000000000..f2e99bfc69d3 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_ListDnsServices.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_ListDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_ListDnsZones.json new file mode 100644 index 000000000000..b53cdc77d628 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_ListDnsZones.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_UpdateDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_UpdateDnsServices.json new file mode 100644 index 000000000000..36f2095886d8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_UpdateDnsServices.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1", + "workloadNetworkDnsService": { + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "dnsService1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_UpdateDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_UpdateDnsZones.json new file mode 100644 index 000000000000..eb52ca04f9b2 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/examples/WorkloadNetworks_UpdateDnsZones.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-07-17", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1", + "workloadNetworkDnsZone": { + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "dnsZone1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/vmware.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/vmware.json index ac54baebcdf8..2eee285d3d9a 100644 --- a/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/vmware.json +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2020-07-17-preview/vmware.json @@ -155,6 +155,22 @@ "type": "string", "description": "NSX Gateway identifier. Generally the same as the Gateway's display name", "x-ms-parameter-location": "method" + }, + "dnsServiceId": { + "name": "dnsServiceId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX DNS Service identifier. Generally the same as the DNS Service's display name", + "x-ms-parameter-location": "method" + }, + "dnsZoneId": { + "name": "dnsZoneId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX DNS Zone identifier. Generally the same as the DNS Zone's display name", + "x-ms-parameter-location": "method" } }, "paths": { @@ -2642,109 +2658,613 @@ } } } - } - }, - "definitions": { - "Trial": { - "description": "Subscription trial availability", - "properties": { - "status": { - "description": "Trial status", - "type": "string", - "enum": [ - "TrialAvailable", - "TrialUsed", - "TrialDisabled" - ], - "readOnly": true, - "x-ms-enum": { - "name": "TrialStatus", - "modelAsString": true + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsServices": { + "get": { + "operationId": "WorkloadNetworks_ListDnsServices", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of DNS services in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsServicesList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "availableHosts": { - "description": "Number of trial hosts available", - "type": "integer", - "format": "int32", - "readOnly": true + "x-ms-examples": { + "WorkloadNetworks_ListDnsServices": { + "$ref": "./examples/WorkloadNetworks_ListDnsServices.json" + } } } }, - "Quota": { - "description": "Subscription quotas", - "properties": { - "hostsRemaining": { - "description": "Remaining hosts quota by sku type", - "type": "object", - "readOnly": true, - "additionalProperties": { - "type": "integer", - "format": "int32", - "readOnly": true + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsServices/{dnsServiceId}": { + "get": { + "operationId": "WorkloadNetworks_GetDnsService", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsServiceId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "quotaEnabled": { - "description": "Host quota is active for current subscription", - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ], - "readOnly": true, - "x-ms-enum": { - "name": "QuotaEnabled", - "modelAsString": true + "x-ms-examples": { + "WorkloadNetworks_GetDnsService": { + "$ref": "./examples/WorkloadNetworks_GetDnsServices.json" } } - } - }, - "Resource": { - "description": "The core properties of ARM resources", - "properties": { - "id": { - "description": "Resource ID.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Resource name.", - "readOnly": true, - "type": "string" + }, + "put": { + "operationId": "WorkloadNetworks_CreateDnsService", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsServiceId" + }, + { + "name": "workloadNetworkDnsService", + "description": "NSX DNS Service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "type": { - "description": "Resource type.", - "readOnly": true, - "type": "string" + "x-ms-examples": { + "WorkloadNetworks_CreateDnsService": { + "$ref": "./examples/WorkloadNetworks_CreateDnsServices.json" + } } }, - "x-ms-azure-resource": true - }, - "TrackedResource": { - "description": "The resource model definition for a ARM tracked top level resource", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "location": { - "type": "string", - "description": "Resource location" + "patch": { + "operationId": "WorkloadNetworks_UpdateDnsService", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsServiceId" + }, + { + "name": "workloadNetworkDnsService", + "description": "NSX DNS Service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "tags": { - "description": "Resource tags", - "$ref": "#/definitions/ResourceTags" + "x-ms-examples": { + "WorkloadNetworks_UpdateDnsService": { + "$ref": "./examples/WorkloadNetworks_UpdateDnsServices.json" + } } - } - }, - "ResourceTags": { - "description": "Resource tags", - "type": "object", - "additionalProperties": { - "type": "string" }, - "x-ms-mutability": [ - "read", + "delete": { + "operationId": "WorkloadNetworks_DeleteDnsService", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/dnsServiceId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No VM group to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteDnsService": { + "$ref": "./examples/WorkloadNetworks_DeleteDnsServices.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsZones": { + "get": { + "operationId": "WorkloadNetworks_ListDnsZones", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of DNS zones in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZonesList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListDnsZones": { + "$ref": "./examples/WorkloadNetworks_ListDnsZones.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsZones/{dnsZoneId}": { + "get": { + "operationId": "WorkloadNetworks_GetDnsZone", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsZoneId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetDnsZone": { + "$ref": "./examples/WorkloadNetworks_GetDnsZones.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreateDnsZone", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsZoneId" + }, + { + "name": "workloadNetworkDnsZone", + "description": "NSX DNS Zone", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreateDnsZone": { + "$ref": "./examples/WorkloadNetworks_CreateDnsZones.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdateDnsZone", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsZoneId" + }, + { + "name": "workloadNetworkDnsZone", + "description": "NSX DNS Zone", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdateDnsZone": { + "$ref": "./examples/WorkloadNetworks_UpdateDnsZones.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeleteDnsZone", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/dnsZoneId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No VM group to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteDnsZone": { + "$ref": "./examples/WorkloadNetworks_DeleteDnsZones.json" + } + } + } + } + }, + "definitions": { + "Trial": { + "description": "Subscription trial availability", + "properties": { + "status": { + "description": "Trial status", + "type": "string", + "enum": [ + "TrialAvailable", + "TrialUsed", + "TrialDisabled" + ], + "readOnly": true, + "x-ms-enum": { + "name": "TrialStatus", + "modelAsString": true + } + }, + "availableHosts": { + "description": "Number of trial hosts available", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "Quota": { + "description": "Subscription quotas", + "properties": { + "hostsRemaining": { + "description": "Remaining hosts quota by sku type", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "quotaEnabled": { + "description": "Host quota is active for current subscription", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "readOnly": true, + "x-ms-enum": { + "name": "QuotaEnabled", + "modelAsString": true + } + } + } + }, + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Resource name.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Resource type.", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/ResourceTags" + } + } + }, + "ResourceTags": { + "description": "Resource tags", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", "create", "update" ] @@ -4132,6 +4652,198 @@ "readOnly": true } } + }, + "WorkloadNetworkDnsServiceProperties": { + "description": "NSX DNS Service Properties", + "properties": { + "displayName": { + "description": "Display name of the DNS Service.", + "type": "string" + }, + "dnsServiceIp": { + "description": "DNS service IP of the DNS Service.", + "type": "string" + }, + "defaultDnsZone": { + "description": "Default DNS zone of the DNS Service.", + "type": "string" + }, + "fqdnZones": { + "description": "FQDN zones of the DNS Service.", + "type": "array", + "items": { + "type": "string" + } + }, + "logLevel": { + "description": "DNS Service log level.", + "type": "string", + "enum": [ + "DEBUG", + "INFO", + "WARNING", + "ERROR", + "FATAL" + ], + "x-ms-enum": { + "name": "DnsServiceLogLevelEnum", + "modelAsString": true + } + }, + "status": { + "description": "DNS Service status.", + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE" + ], + "x-ms-enum": { + "name": "DnsServiceStatusEnum", + "modelAsString": true + }, + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkDnsServiceProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkDnsService": { + "description": "NSX DNS Service", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "DNS Service properties", + "$ref": "#/definitions/WorkloadNetworkDnsServiceProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkDnsServicesList": { + "description": "A list of NSX DNS Services", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkDnsZoneProperties": { + "description": "NSX DNS Zone Properties", + "properties": { + "displayName": { + "description": "Display name of the DNS Zone.", + "type": "string" + }, + "domain": { + "description": "Domain names of the DNS Zone.", + "type": "array", + "items": { + "type": "string" + } + }, + "dnsServerIps": { + "description": "DNS Server IP array of the DNS Zone.", + "type": "array", + "items": { + "type": "string" + } + }, + "sourceIp": { + "description": "Source IP of the DNS Zone.", + "type": "string" + }, + "dnsServices": { + "description": "Number of DNS Services using the DNS zone.", + "type": "integer", + "format": "int64" + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkDnsZoneProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkDnsZone": { + "description": "NSX DNS Zone", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "DNS Zone properties", + "$ref": "#/definitions/WorkloadNetworkDnsZoneProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkDnsZonesList": { + "description": "A list of NSX DNS Zones", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } } } }