Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[2024-11-01]: Update Vnet-related APIs to Swagger #31503

Open
wants to merge 4 commits into
base: release-web-2024-11-01
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -1410,6 +1410,111 @@
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkIntegrations/{vnetName}": {
"get": {
"tags": [
"AppServicePlans"
],
"summary": "Get a Virtual Network associated with an App Service plan",
"description": "Get a Virtual Network associated with an App Service plan and its properties, such as IP allocation and resource allocation",
"operationId": "AppServicePlans_GetVirtualNetworkIntegration",
"parameters": [
{
"$ref": "#/parameters/resourceGroupNameParameter"
},
{
"name": "name",
"in": "path",
"description": "Name of the App Service plan.",
"required": true,
"type": "string"
},
{
"name": "vnetName",
"in": "path",
"description": "Name of the Virtual Network in the form of <vnetGuid>_<subnetName>",
"required": true,
"type": "string",
"pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}_.+$"
},
{
"$ref": "#/parameters/subscriptionIdParameter"
},
{
"$ref": "#/parameters/apiVersionParameter"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/SwiftVirtualNetwork"
}
},
"default": {
"description": "App Service error response.",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
}
}
},
"x-ms-examples": {
"GetVirtualNetworkIntegration": {
"$ref": "./examples/AppServicePlan_GetVirtualNetworkIntegration.json"
}
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkIntegrations": {
"get": {
"tags": [
"AppServicePlans"
],
"summary": "Get all Virtual Networks associated with an App Service plan",
"description": "Get all Virtual Networks associated with an App Service plan and their properties, such as IP allocation and resource allocation",
"operationId": "AppServicePlans_GetVirtualNetworkIntegrations",
"parameters": [
{
"$ref": "#/parameters/resourceGroupNameParameter"
},
{
"name": "name",
"in": "path",
"description": "Name of the App Service plan.",
"required": true,
"type": "string"
},
{
"$ref": "#/parameters/subscriptionIdParameter"
},
{
"$ref": "#/parameters/apiVersionParameter"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/SwiftVirtualNetworkCollection"
}
},
"default": {
"description": "App Service error response.",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
}
}
},
"x-ms-pageable": {
"nextLinkName": "nextLink"
},
"x-ms-examples": {
"GetVirtualNetworkIntegrations": {
"$ref": "./examples/AppServicePlan_GetVirtualNetworkIntegrations.json"
}
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/workers/{workerName}/reboot": {
"post": {
"tags": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -978,6 +978,110 @@
}
}
},
"SwiftVirtualNetworkProxy": {
"description": "Swift Virtual Network Contract. This is used to enable the new Swift way of doing virtual network integration.",
"type": "object",
"allOf": [
{
"$ref": "#/definitions/ProxyOnlyResource"
}
],
"properties": {
"properties": {
"$ref": "#/definitions/SwiftVirtualNetwork"
}
}
},
"SwiftVirtualNetwork": {
"description": "Swift Virtual Network Contract. This is used to enable the new Swift way of doing virtual network integration.",
"type": "object",
"properties": {
"subnetResourceId": {
"description": "The Virtual Network subnet's Azure resource ID",
"type": "string",
"format": "arm-id"
hdmimsft marked this conversation as resolved.
Show resolved Hide resolved
},
"swiftSupported": {
"description": "Boolean flag indicating whether Swift integration is supported",
"type": "boolean"
},
"subnetIpAllocation": {
"description": "IP allocation for a Swift Subnet",
"type": "object",
"properties": {
"subnetIpAddressesAvailable": {
"description": "The number of IP addresses available in the Swift subnet address space",
"type": "integer",
"format": "int32"
},
"subnetIpAddressesUsed": {
"description": "The number of IP addresses that have already been used in the Swift subnet address space",
"type": "integer",
"format": "int32"
}
}
},
"vnetConnectionAllocation": {
"description": "Swift Connection allocations for an App Service Plan",
"type": "object",
"properties": {
"vnetConnectionsUsed": {
"description": "The number of Swift Connections used for an App Service Plan",
"type": "integer",
"format": "int32"
},
"vnetConnectionsMax": {
"description": "The maximum number of Swift Connections available for an App Service Plan",
"type": "integer",
"format": "int32"
}
}
},
"resourceAllocation": {
"description": "Resources (sites and serverfarms) allocated to this subnet",
"type": "object",
"properties": {
"connectedServerFarmsId": {
"description": "The list of all ServerFarms' Azure resource ID that are using the VNET",
"type": "array",
"items": {
"type": "string",
"format": "arm-id"
hdmimsft marked this conversation as resolved.
Show resolved Hide resolved
}
},
"connectedSitesId": {
"description": "The list of all Sites' Azure resource ID that are using the VNET",
"type": "array",
"items": {
"type": "string",
"format": "arm-id"
hdmimsft marked this conversation as resolved.
Show resolved Hide resolved
}
}
}
}
}
},
"SwiftVirtualNetworkCollection": {
"description": "Collection of Swift Virtual Networks",
"required": [
"value"
],
"type": "object",
"properties": {
"value": {
"description": "Collection of resources.",
"type": "array",
"items": {
"$ref": "#/definitions/SwiftVirtualNetwork"
}
},
"nextLink": {
"description": "Link to next page of resources.",
"type": "string",
"readOnly": true
}
}
},
"CustomDnsSuffixConfiguration": {
"description": "Full view of the custom domain suffix configuration for ASEv3.",
"type": "object",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -545,6 +545,98 @@
}
}
},
"/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/listVirtualNetworkIntegrations": {
"post": {
"summary": "Retrieve information regarding the provided virtual network integration",
"description": "Retrieve information regarding the provided virtual network integration, such as its allocated resources and its allocated IP",
"operationId": "VirtualNetworkIntegrations",
"parameters": [
{
"name": "request",
"in": "body",
"description": "Object contains the subnetResourceId",
"required": true,
"schema": {
"$ref": "#/definitions/VirtualNetworkIntegrationRequest"
}
},
{
"$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
},
{
"$ref": "#/parameters/subscriptionIdParameter"
hdmimsft marked this conversation as resolved.
Show resolved Hide resolved
},
{
"$ref": "#/parameters/apiVersionParameter"
hdmimsft marked this conversation as resolved.
Show resolved Hide resolved
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/SwiftVirtualNetwork"
}
},
"default": {
"description": "App Service error response.",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
}
}
},
"x-ms-examples": {
"ListVirtualNetworkIntegrations": {
"$ref": "./examples/ListVirtualNetworkIntegrations.json"
}
}
}
},
"/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/purgeUnusedVirtualNetworkIntegration": {
"post": {
"summary": "Delete orphaned (unused) VNET integration",
"description": "Delete orphaned (unused) VNET integration, otherwise fail the call if there are sites that are still using the VNET integrations",
"operationId": "PurgeUnusedVirtualNetworkIntegrations",
"parameters": [
{
"name": "request",
"in": "body",
"description": "Object contains the subnetResourceId",
"required": true,
"schema": {
"$ref": "#/definitions/VirtualNetworkIntegrationRequest"
}
},
{
"$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
},
{
"$ref": "#/parameters/subscriptionIdParameter"
},
{
"$ref": "#/parameters/apiVersionParameter"
}
],
"responses": {
"200": {
"description": "The Virtual Network is deleted.",
"schema": {
"$ref": "#/definitions/VirtualNetworkIntegrationResponse"
}
},
"default": {
"description": "App Service error response.",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
}
}
},
"x-ms-examples": {
"PurgeUnusedVirtualNetworkIntegrations": {
"$ref": "./examples/PurgeUnusedVirtualNetworkIntegrations.json"
}
}
}
},
"/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/usages": {
"get": {
"summary": "Lists subscription core usages for all skus used in a location, for a given type of quota.",
Expand Down Expand Up @@ -1606,6 +1698,43 @@
"x-ms-client-flatten": true
}
}
},
"VirtualNetworkIntegrationRequest": {
"description": "Virtual Network Integration request content.",
"required": [
"subnetResourceId"
],
"type": "object",
"properties": {
"subnetResourceId": {
hdmimsft marked this conversation as resolved.
Show resolved Hide resolved
"description": "The Azure Resource ID of the subnet",
"type": "string",
"format": "arm-id"
}
}
},
"VirtualNetworkIntegrationResponse": {
"description": "Response wrapper for PurgedUnusedVirtualNetworkIntegrations.",
"type": "object",
"properties": {
"message": {
"description": "Description of the result",
"type": "string",
"enum": [
"Operation is not supported at the moment.",
"Purged unused virtual network integration.",
"<ERROR> Conflict: Virtual network integration is still in use."
],
"x-ms-enum": {
"name": "VirtualNetworkIntegrationResponseMessage",
"modelAsString": true
}
},
"swiftVirtualNetwork": {
"description": "The Swift Virtual Network object",
"$ref": "./CommonDefinitions.json#/definitions/SwiftVirtualNetwork"
}
}
}
},
"parameters": {
Expand Down
Loading