Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2FwcGxpY2F0aW9uZ2F0ZXdheXMve30=/2022-01-01.xml (9,635 lines of code) (raw):

<?xml version='1.0' encoding='utf-8'?> <CodeGen plane="mgmt-plane"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/applicationgateways/{}" version="2022-01-01" swagger="mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9hcHBsaWNhdGlvbkdhdGV3YXlzL3thcHBsaWNhdGlvbkdhdGV3YXlOYW1lfQ==/V/MjAyMi0wMS0wMQ=="/> <commandGroup name="network application-gateway"> <command name="show" version="2022-01-01" confirmation=""> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/applicationgateways/{}" version="2022-01-01" swagger="mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9hcHBsaWNhdGlvbkdhdGV3YXlzL3thcHBsaWNhdGlvbkdhdGV3YXlOYW1lfQ==/V/MjAyMi0wMS0wMQ=="/> <argGroup name=""> <arg type="string" var="$Path.applicationGatewayName" options="name n" required="True" group="" idPart="name"> <help short="Name of the application gateway."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> </argGroup> <operation operationId="ApplicationGateways_Get"> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}"> <request method="get"> <path> <param type="string" name="applicationGatewayName" arg="$Path.applicationGatewayName" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2022-01-01&quot;"/> </const> </query> </request> <response statusCode="200"> <body> <json var="$Instance"> <schema type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </prop> <prop type="IdentityObject" name="identity"> <prop readOnly="True" type="string" name="principalId"/> <prop readOnly="True" type="string" name="tenantId"/> <prop type="string" name="type"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;SystemAssigned&quot;"/> <item value="&quot;SystemAssigned, UserAssigned&quot;"/> <item value="&quot;UserAssigned&quot;"/> </enum> </prop> <prop type="object" name="userAssignedIdentities"> <additionalProp> <item type="object"> <prop readOnly="True" type="string" name="clientId"/> <prop readOnly="True" type="string" name="principalId"/> </item> </additionalProp> </prop> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="authenticationCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="autoscaleConfiguration"> <prop type="integer32" name="maxCapacity"> <format minimum="2"/> </prop> <prop type="integer32" name="minCapacity" required="True"> <format minimum="0"/> </prop> </prop> <prop type="array<object>" name="backendAddressPools"> <item type="object" cls="ApplicationGatewayBackendAddressPool_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="backendAddresses"> <item type="object"> <prop type="string" name="fqdn"/> <prop type="string" name="ipAddress"/> </item> </prop> <prop readOnly="True" type="array<object>" name="backendIPConfigurations"> <item type="object" cls="NetworkInterfaceIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}/ipConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<@ApplicationGatewayBackendAddressPool_read>" name="applicationGatewayBackendAddressPools"> <item type="@ApplicationGatewayBackendAddressPool_read"/> </prop> <prop type="array<@ApplicationSecurityGroup_read>" name="applicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="@SubResource_read" name="gatewayLoadBalancer"/> <prop type="array<object>" name="loadBalancerBackendAddressPools"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/backendAddressPools/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<@NetworkInterfaceIPConfiguration_read>" name="backendIPConfigurations"> <item type="@NetworkInterfaceIPConfiguration_read"/> </prop> <prop type="integer32" name="drainPeriodInSeconds"/> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatRules"> <item type="@SubResource_read"/> </prop> <prop type="array<object>" name="loadBalancerBackendAddresses"> <item type="object"> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="adminState"> <enum> <item value="&quot;Down&quot;"/> <item value="&quot;Drain&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Up&quot;"/> </enum> </prop> <prop readOnly="True" type="array<object>" name="inboundNatRulesPortMapping"> <item type="object"> <prop type="integer32" name="backendPort"/> <prop type="integer32" name="frontendPort"/> <prop type="string" name="inboundNatRuleName"/> </item> </prop> <prop type="string" name="ipAddress"/> <prop type="@SubResource_read" name="loadBalancerFrontendIPConfiguration"/> <prop readOnly="True" type="@SubResource_read" name="networkInterfaceIPConfiguration"/> <prop type="@SubResource_read" name="subnet"/> <prop type="@SubResource_read" name="virtualNetwork"/> </prop> </item> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="loadBalancingRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="location"/> <prop readOnly="True" type="@SubResource_read" name="outboundRule"/> <prop readOnly="True" type="array<@SubResource_read>" name="outboundRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="tunnelInterfaces"> <item type="object"> <prop type="integer32" name="identifier"/> <prop type="integer32" name="port"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Native&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VXLAN&quot;"/> </enum> </prop> <prop type="string" name="type"> <enum> <item value="&quot;External&quot;"/> <item value="&quot;Internal&quot;"/> <item value="&quot;None&quot;"/> </enum> </prop> </item> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="loadBalancerInboundNatRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/inboundNatRules/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop readOnly="True" type="@NetworkInterfaceIPConfiguration_read" name="backendIPConfiguration"/> <prop type="integer32" name="backendPort"/> <prop type="boolean" name="enableFloatingIP"/> <prop type="boolean" name="enableTcpReset"/> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="integer32" name="frontendPort"/> <prop type="integer32" name="frontendPortRangeEnd"/> <prop type="integer32" name="frontendPortRangeStart"/> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop type="string" name="protocol"> <enum> <item value="&quot;All&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="object" name="privateLinkConnectionProperties"> <prop readOnly="True" type="array<string>" name="fqdns"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="groupId"/> <prop readOnly="True" type="string" name="requiredMemberName"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@PublicIPAddress_read" name="publicIPAddress"/> <prop type="@Subnet_read" name="subnet"/> <prop type="array<object>" name="virtualNetworkTaps"> <item type="object" cls="VirtualNetworkTap_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkTaps/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="destinationLoadBalancerFrontEndIPConfiguration" cls="FrontendIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/frontendIPConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="gatewayLoadBalancer"/> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatPools"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="loadBalancingRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="outboundRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@PublicIPAddress_read" name="publicIPAddress"/> <prop type="@SubResource_read" name="publicIPPrefix"/> <prop type="object" name="subnet" cls="Subnet_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworks/{}/subnets/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="addressPrefix"/> <prop type="array<string>" name="addressPrefixes"> <item type="string"/> </prop> <prop type="array<@ApplicationGatewayIPConfiguration_read>" name="applicationGatewayIpConfigurations"> <item type="@ApplicationGatewayIPConfiguration_read"/> </prop> <prop type="array<object>" name="delegations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<string>" name="actions"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="serviceName"/> </prop> <prop type="string" name="type"/> </item> </prop> <prop type="array<@SubResource_read>" name="ipAllocations"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<object>" name="ipConfigurationProfiles"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<object>" name="ipConfigurations"> <item type="object" cls="IPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <default value="&quot;Dynamic&quot;"/> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="publicIPAddress" cls="PublicIPAddress_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/publicIPAddresses/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="ddosSettings"> <prop type="@SubResource_read" name="ddosCustomPolicy"/> <prop type="boolean" name="protectedIP"/> <prop type="string" name="protectionCoverage"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> </prop> <prop type="string" name="deleteOption"> <enum> <item value="&quot;Delete&quot;"/> <item value="&quot;Detach&quot;"/> </enum> </prop> <prop type="object" name="dnsSettings"> <prop type="string" name="domainNameLabel"/> <prop type="string" name="fqdn"/> <prop type="string" name="reverseFqdn"/> </prop> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop type="string" name="ipAddress"/> <prop readOnly="True" type="@IPConfiguration_read" name="ipConfiguration"/> <prop type="array<object>" name="ipTags"> <item type="object"> <prop type="string" name="ipTagType"/> <prop type="string" name="tag"/> </item> </prop> <prop type="@PublicIPAddress_read" name="linkedPublicIPAddress"/> <prop type="string" name="migrationPhase"> <enum> <item value="&quot;Abort&quot;"/> <item value="&quot;Commit&quot;"/> <item value="&quot;Committed&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Prepare&quot;"/> </enum> </prop> <prop type="object" name="natGateway"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/natGateways/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<@SubResource_read>" name="publicIpAddresses"> <item type="@SubResource_read"/> </prop> <prop type="array<@SubResource_read>" name="publicIpPrefixes"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop readOnly="True" type="array<@SubResource_read>" name="subnets"> <item type="@SubResource_read"/> </prop> </prop> <prop type="object" name="sku"> <prop type="string" name="name"> <enum> <item value="&quot;Standard&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="publicIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="publicIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="publicIPPrefix"/> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="@PublicIPAddress_read" name="servicePublicIPAddress"/> </prop> <prop type="object" name="sku"> <prop type="string" name="name"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> <prop type="string" name="tier"> <enum> <item value="&quot;Global&quot;"/> <item value="&quot;Regional&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> </item> </prop> <prop type="@SubResource_read" name="natGateway"/> <prop type="object" name="networkSecurityGroup" cls="NetworkSecurityGroup_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkSecurityGroups/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<@SecurityRule_read>" name="defaultSecurityRules"> <item type="@SecurityRule_read"/> </prop> <prop readOnly="True" type="array<object>" name="flowLogs"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkWatchers/{}/flowLogs/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="enabled"/> <prop type="object" name="flowAnalyticsConfiguration"> <prop type="object" name="networkWatcherFlowAnalyticsConfiguration"> <prop type="boolean" name="enabled"/> <prop type="integer32" name="trafficAnalyticsInterval"/> <prop type="string" name="workspaceId"/> <prop type="string" name="workspaceRegion"/> <prop type="string" name="workspaceResourceId"/> </prop> </prop> <prop type="object" name="format"> <prop type="string" name="type"> <enum> <item value="&quot;JSON&quot;"/> </enum> </prop> <prop type="integer32" name="version"> <default value="0"/> </prop> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="retentionPolicy"> <prop type="integer32" name="days"> <default value="0"/> </prop> <prop type="boolean" name="enabled"> <default value="false"/> </prop> </prop> <prop type="string" name="storageId" required="True"/> <prop readOnly="True" type="string" name="targetResourceGuid"/> <prop type="string" name="targetResourceId" required="True"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="boolean" name="flushConnection"/> <prop readOnly="True" type="array<object>" name="networkInterfaces"> <item type="object" cls="NetworkInterface_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="object" name="extendedLocation" cls="ExtendedLocation_read"> <prop type="string" name="name"/> <prop type="string" name="type"> <enum> <item value="&quot;EdgeZone&quot;"/> </enum> </prop> </prop> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="auxiliaryMode"> <enum> <item value="&quot;Floating&quot;"/> <item value="&quot;MaxConnections&quot;"/> <item value="&quot;None&quot;"/> </enum> </prop> <prop type="object" name="dnsSettings"> <prop readOnly="True" type="array<string>" name="appliedDnsServers"> <item type="string"/> </prop> <prop type="array<string>" name="dnsServers"> <item type="string"/> </prop> <prop type="string" name="internalDnsNameLabel"/> <prop readOnly="True" type="string" name="internalDomainNameSuffix"/> <prop readOnly="True" type="string" name="internalFqdn"/> </prop> <prop readOnly="True" type="@SubResource_read" name="dscpConfiguration"/> <prop type="boolean" name="enableAcceleratedNetworking"/> <prop type="boolean" name="enableIPForwarding"/> <prop readOnly="True" type="array<string>" name="hostedWorkloads"> <item type="string"/> </prop> <prop type="array<@NetworkInterfaceIPConfiguration_read>" name="ipConfigurations"> <item type="@NetworkInterfaceIPConfiguration_read"/> </prop> <prop readOnly="True" type="string" name="macAddress"/> <prop type="string" name="migrationPhase"> <enum> <item value="&quot;Abort&quot;"/> <item value="&quot;Commit&quot;"/> <item value="&quot;Committed&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Prepare&quot;"/> </enum> </prop> <prop type="@NetworkSecurityGroup_read" name="networkSecurityGroup"/> <prop type="string" name="nicType"> <enum> <item value="&quot;Elastic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> <prop readOnly="True" type="boolean" name="primary"/> <prop type="object" name="privateEndpoint" cls="PrivateEndpoint_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateEndpoints/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<@ApplicationSecurityGroup_read>" name="applicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="array<object>" name="customDnsConfigs"> <item type="object"> <prop type="string" name="fqdn"/> <prop type="array<string>" name="ipAddresses"> <item type="string"/> </prop> </item> </prop> <prop type="string" name="customNetworkInterfaceName"/> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="groupId"/> <prop type="string" name="memberName"/> <prop type="string" name="privateIPAddress"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@PrivateLinkServiceConnection_read>" name="manualPrivateLinkServiceConnections"> <item type="@PrivateLinkServiceConnection_read"/> </prop> <prop readOnly="True" type="array<@NetworkInterface_read>" name="networkInterfaces"> <item type="@NetworkInterface_read"/> </prop> <prop type="array<object>" name="privateLinkServiceConnections"> <item type="object" cls="PrivateLinkServiceConnection_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<string>" name="groupIds"> <item type="string"/> </prop> <prop type="object" name="privateLinkServiceConnectionState" cls="PrivateLinkServiceConnectionState_read"> <prop type="string" name="actionsRequired"/> <prop type="string" name="description"/> <prop type="string" name="status"/> </prop> <prop type="string" name="privateLinkServiceId"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="requestMessage"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="object" name="privateLinkService"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateLinkServices/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="alias"/> <prop type="object" name="autoApproval"> <prop type="array<string>" name="subscriptions"> <item type="string"/> </prop> </prop> <prop type="boolean" name="enableProxyProtocol"/> <prop type="array<string>" name="fqdns"> <item type="string"/> </prop> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@FrontendIPConfiguration_read>" name="loadBalancerFrontendIpConfigurations"> <item type="@FrontendIPConfiguration_read"/> </prop> <prop readOnly="True" type="array<@NetworkInterface_read>" name="networkInterfaces"> <item type="@NetworkInterface_read"/> </prop> <prop readOnly="True" type="array<object>" name="privateEndpointConnections"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateLinkServices/{}/privateEndpointConnections/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="linkIdentifier"/> <prop readOnly="True" type="@PrivateEndpoint_read" name="privateEndpoint"/> <prop type="@PrivateLinkServiceConnectionState_read" name="privateLinkServiceConnectionState"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="visibility"> <prop type="array<string>" name="subscriptions"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop readOnly="True" type="array<@NetworkInterfaceTapConfiguration_read>" name="tapConfigurations"> <item type="@NetworkInterfaceTapConfiguration_read"/> </prop> <prop readOnly="True" type="@SubResource_read" name="virtualMachine"/> <prop readOnly="True" type="boolean" name="vnetEncryptionSupported"/> <prop type="string" name="workloadType"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="securityRules"> <item type="object" cls="SecurityRule_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="access" required="True"> <enum> <item value="&quot;Allow&quot;"/> <item value="&quot;Deny&quot;"/> </enum> </prop> <prop type="string" name="description"/> <prop type="string" name="destinationAddressPrefix"/> <prop type="array<string>" name="destinationAddressPrefixes"> <item type="string"/> </prop> <prop type="array<@ApplicationSecurityGroup_read>" name="destinationApplicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="string" name="destinationPortRange"/> <prop type="array<string>" name="destinationPortRanges"> <item type="string"/> </prop> <prop type="string" name="direction" required="True"> <enum> <item value="&quot;Inbound&quot;"/> <item value="&quot;Outbound&quot;"/> </enum> </prop> <prop type="integer32" name="priority"/> <prop type="string" name="protocol" required="True"> <enum> <item value="&quot;*&quot;"/> <item value="&quot;Ah&quot;"/> <item value="&quot;Esp&quot;"/> <item value="&quot;Icmp&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="sourceAddressPrefix"/> <prop type="array<string>" name="sourceAddressPrefixes"> <item type="string"/> </prop> <prop type="array<object>" name="sourceApplicationSecurityGroups"> <item type="object" cls="ApplicationSecurityGroup_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationSecurityGroups/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="string" name="sourcePortRange"/> <prop type="array<string>" name="sourcePortRanges"> <item type="string"/> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="string" name="privateEndpointNetworkPolicies"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop readOnly="True" type="array<@PrivateEndpoint_read>" name="privateEndpoints"> <item type="@PrivateEndpoint_read"/> </prop> <prop type="string" name="privateLinkServiceNetworkPolicies"> <default value="&quot;Enabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="purpose"/> <prop readOnly="True" type="array<object>" name="resourceNavigationLinks"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop readOnly="True" type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="link"/> <prop type="string" name="linkedResourceType"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="routeTable"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/routeTables/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="disableBgpRoutePropagation"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="routes"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/routeTables/{}/routes/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="addressPrefix"/> <prop type="boolean" name="hasBgpOverride"/> <prop type="string" name="nextHopIpAddress"/> <prop type="string" name="nextHopType" required="True"> <enum> <item value="&quot;Internet&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VirtualAppliance&quot;"/> <item value="&quot;VirtualNetworkGateway&quot;"/> <item value="&quot;VnetLocal&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="array<object>" name="serviceAssociationLinks"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="allowDelete"/> <prop type="string" name="link"/> <prop type="string" name="linkedResourceType"/> <prop type="array<string>" name="locations"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="serviceEndpointPolicies"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/serviceEndpointPolicies/{}"/> </prop> <prop readOnly="True" type="string" name="kind"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<string>" name="contextualServiceEndpointPolicies"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="string" name="serviceAlias"/> <prop type="array<object>" name="serviceEndpointPolicyDefinitions"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/serviceEndpointPolicies/{}/serviceEndpointPolicyDefinitions/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="description"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="service"/> <prop type="array<string>" name="serviceResources"> <item type="string"/> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="serviceEndpoints"> <item type="object"> <prop type="array<string>" name="locations"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="service"/> </item> </prop> </prop> <prop type="string" name="type"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop type="@NetworkInterfaceIPConfiguration_read" name="destinationNetworkInterfaceIPConfiguration"/> <prop type="integer" name="destinationPort"/> <prop readOnly="True" type="array<object>" name="networkInterfaceTapConfigurations"> <item type="object" cls="NetworkInterfaceTapConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}/tapConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@VirtualNetworkTap_read" name="virtualNetworkTap"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="backendHttpSettingsCollection"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="affinityCookieName"/> <prop type="array<@SubResource_read>" name="authenticationCertificates"> <item type="@SubResource_read"/> </prop> <prop type="object" name="connectionDraining"> <prop type="integer32" name="drainTimeoutInSec" required="True"> <format maximum="3600" minimum="1"/> </prop> <prop type="boolean" name="enabled" required="True"/> </prop> <prop type="string" name="cookieBasedAffinity"> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="hostName"/> <prop type="string" name="path"/> <prop type="boolean" name="pickHostNameFromBackendAddress"/> <prop type="integer32" name="port"/> <prop type="@SubResource_read" name="probe"/> <prop type="boolean" name="probeEnabled"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="requestTimeout"/> <prop type="array<@SubResource_read>" name="trustedRootCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="backendSettingsCollection"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="hostName"/> <prop type="boolean" name="pickHostNameFromBackendAddress"/> <prop type="integer32" name="port"/> <prop type="@SubResource_read" name="probe"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="timeout"/> <prop type="array<@SubResource_read>" name="trustedRootCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@ApplicationGatewayCustomError_read>" name="customErrorConfigurations"> <item type="@ApplicationGatewayCustomError_read"/> </prop> <prop type="boolean" name="enableFips"/> <prop type="boolean" name="enableHttp2"/> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="boolean" name="forceFirewallPolicyAssociation"/> <prop type="array<object>" name="frontendIPConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="privateLinkConfiguration"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="publicIPAddress"/> <prop type="@SubResource_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="frontendPorts"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="port"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="gatewayIPConfigurations"> <item type="object" cls="ApplicationGatewayIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="subnet" cls="SubResource_read"> <prop type="string" name="id"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="globalConfiguration"> <prop type="boolean" name="enableRequestBuffering"/> <prop type="boolean" name="enableResponseBuffering"/> </prop> <prop type="array<object>" name="httpListeners"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="customErrorConfigurations"> <item type="object" cls="ApplicationGatewayCustomError_read"> <prop type="string" name="customErrorPageUrl"/> <prop type="string" name="statusCode"> <enum> <item value="&quot;HttpStatus403&quot;"/> <item value="&quot;HttpStatus502&quot;"/> </enum> </prop> </item> </prop> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="@SubResource_read" name="frontendPort"/> <prop type="string" name="hostName"/> <prop type="array<string>" name="hostNames"> <item type="string"/> </prop> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="boolean" name="requireServerNameIndication"/> <prop type="@SubResource_read" name="sslCertificate"/> <prop type="@SubResource_read" name="sslProfile"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="listeners"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="@SubResource_read" name="frontendPort"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="sslCertificate"/> <prop type="@SubResource_read" name="sslProfile"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="loadDistributionPolicies"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="loadDistributionAlgorithm"> <enum> <item value="&quot;IpHash&quot;"/> <item value="&quot;LeastConnections&quot;"/> <item value="&quot;RoundRobin&quot;"/> </enum> </prop> <prop type="array<object>" name="loadDistributionTargets"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="integer32" name="weightPerServer"> <format maximum="100" minimum="1"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="operationalState"> <enum> <item value="&quot;Running&quot;"/> <item value="&quot;Starting&quot;"/> <item value="&quot;Stopped&quot;"/> <item value="&quot;Stopping&quot;"/> </enum> </prop> <prop readOnly="True" type="array<object>" name="privateEndpointConnections"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}/privateEndpointConnections/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="linkIdentifier"/> <prop readOnly="True" type="@PrivateEndpoint_read" name="privateEndpoint"/> <prop type="@PrivateLinkServiceConnectionState_read" name="privateLinkServiceConnectionState"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="privateLinkConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="probes"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="host"/> <prop type="integer32" name="interval"/> <prop type="object" name="match"> <prop type="string" name="body"/> <prop type="array<string>" name="statusCodes"> <item type="string"/> </prop> </prop> <prop type="integer32" name="minServers"/> <prop type="string" name="path"/> <prop type="boolean" name="pickHostNameFromBackendHttpSettings"/> <prop type="boolean" name="pickHostNameFromBackendSettings"/> <prop type="integer32" name="port"> <format maximum="65535" minimum="1"/> </prop> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="timeout"/> <prop type="integer32" name="unhealthyThreshold"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="redirectConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="includePath"/> <prop type="boolean" name="includeQueryString"/> <prop type="array<@SubResource_read>" name="pathRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="redirectType"> <enum> <item value="&quot;Found&quot;"/> <item value="&quot;Permanent&quot;"/> <item value="&quot;SeeOther&quot;"/> <item value="&quot;Temporary&quot;"/> </enum> </prop> <prop type="array<@SubResource_read>" name="requestRoutingRules"> <item type="@SubResource_read"/> </prop> <prop type="@SubResource_read" name="targetListener"/> <prop type="string" name="targetUrl"/> <prop type="array<@SubResource_read>" name="urlPathMaps"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="requestRoutingRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendHttpSettings"/> <prop type="@SubResource_read" name="httpListener"/> <prop type="@SubResource_read" name="loadDistributionPolicy"/> <prop type="integer32" name="priority"> <format maximum="20000" minimum="1"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="redirectConfiguration"/> <prop type="@SubResource_read" name="rewriteRuleSet"/> <prop type="string" name="ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="urlPathMap"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="rewriteRuleSets"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="rewriteRules"> <item type="object"> <prop type="object" name="actionSet"> <prop type="array<object>" name="requestHeaderConfigurations"> <item type="object" cls="ApplicationGatewayHeaderConfiguration_read"> <prop type="string" name="headerName"/> <prop type="string" name="headerValue"/> </item> </prop> <prop type="array<@ApplicationGatewayHeaderConfiguration_read>" name="responseHeaderConfigurations"> <item type="@ApplicationGatewayHeaderConfiguration_read"/> </prop> <prop type="object" name="urlConfiguration"> <prop type="string" name="modifiedPath"/> <prop type="string" name="modifiedQueryString"/> <prop type="boolean" name="reroute"/> </prop> </prop> <prop type="array<object>" name="conditions"> <item type="object"> <prop type="boolean" name="ignoreCase"/> <prop type="boolean" name="negate"/> <prop type="string" name="pattern"/> <prop type="string" name="variable"/> </item> </prop> <prop type="string" name="name"/> <prop type="integer" name="ruleSequence"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="routingRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendSettings"/> <prop type="@SubResource_read" name="listener"/> <prop type="integer32" name="priority" required="True"> <format maximum="20000" minimum="1"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="sku"> <prop type="integer32" name="capacity"/> <prop type="string" name="name"> <enum> <item value="&quot;Standard_Large&quot;"/> <item value="&quot;Standard_Medium&quot;"/> <item value="&quot;Standard_Small&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF_Large&quot;"/> <item value="&quot;WAF_Medium&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> <prop type="string" name="tier"> <enum> <item value="&quot;Standard&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop type="string" name="keyVaultSecretId"/> <prop type="string" name="password"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="publicCertData"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="sslPolicy" cls="ApplicationGatewaySslPolicy_read"> <prop type="array<string>" name="cipherSuites"> <item type="string"> <enum> <item value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </prop> <prop type="array<string>" name="disabledSslProtocols"> <item type="string"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </item> </prop> <prop type="string" name="minProtocolVersion"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </prop> <prop type="string" name="policyName"> <enum> <item value="&quot;AppGwSslPolicy20150501&quot;"/> <item value="&quot;AppGwSslPolicy20170401&quot;"/> <item value="&quot;AppGwSslPolicy20170401S&quot;"/> <item value="&quot;AppGwSslPolicy20220101&quot;"/> <item value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </prop> <prop type="string" name="policyType"> <enum> <item value="&quot;Custom&quot;"/> <item value="&quot;CustomV2&quot;"/> <item value="&quot;Predefined&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslProfiles"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="clientAuthConfiguration"> <prop type="boolean" name="verifyClientCertIssuerDN"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@ApplicationGatewaySslPolicy_read" name="sslPolicy"/> <prop type="array<@SubResource_read>" name="trustedClientCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="trustedClientCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="clientCertIssuerDN"/> <prop type="string" name="data"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="validatedCertData"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="trustedRootCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop type="string" name="keyVaultSecretId"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="urlPathMaps"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="defaultBackendAddressPool"/> <prop type="@SubResource_read" name="defaultBackendHttpSettings"/> <prop type="@SubResource_read" name="defaultLoadDistributionPolicy"/> <prop type="@SubResource_read" name="defaultRedirectConfiguration"/> <prop type="@SubResource_read" name="defaultRewriteRuleSet"/> <prop type="array<object>" name="pathRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendHttpSettings"/> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="@SubResource_read" name="loadDistributionPolicy"/> <prop type="array<string>" name="paths"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="redirectConfiguration"/> <prop type="@SubResource_read" name="rewriteRuleSet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="webApplicationFirewallConfiguration"> <prop type="array<object>" name="disabledRuleGroups"> <item type="object"> <prop type="string" name="ruleGroupName" required="True"/> <prop type="array<integer32>" name="rules"> <item type="integer32"/> </prop> </item> </prop> <prop type="boolean" name="enabled" required="True"/> <prop type="array<object>" name="exclusions"> <item type="object"> <prop type="string" name="matchVariable" required="True"/> <prop type="string" name="selector" required="True"/> <prop type="string" name="selectorMatchOperator" required="True"/> </item> </prop> <prop type="integer32" name="fileUploadLimitInMb"> <format minimum="0"/> </prop> <prop type="string" name="firewallMode" required="True"> <enum> <item value="&quot;Detection&quot;"/> <item value="&quot;Prevention&quot;"/> </enum> </prop> <prop type="integer32" name="maxRequestBodySize"> <format maximum="128" minimum="8"/> </prop> <prop type="integer32" name="maxRequestBodySizeInKb"> <format maximum="128" minimum="8"/> </prop> <prop type="boolean" name="requestBodyCheck"/> <prop type="string" name="ruleSetType" required="True"/> <prop type="string" name="ruleSetVersion" required="True"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> <command name="delete" version="2022-01-01" confirmation=""> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/applicationgateways/{}" version="2022-01-01" swagger="mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9hcHBsaWNhdGlvbkdhdGV3YXlzL3thcHBsaWNhdGlvbkdhdGV3YXlOYW1lfQ==/V/MjAyMi0wMS0wMQ=="/> <argGroup name=""> <arg type="string" var="$Path.applicationGatewayName" options="name n" required="True" group="" idPart="name"> <help short="Name of the application gateway."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> </argGroup> <operation operationId="ApplicationGateways_Delete"> <longRunning finalStateVia="location"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}"> <request method="delete"> <path> <param type="string" name="applicationGatewayName" arg="$Path.applicationGatewayName" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2022-01-01&quot;"/> </const> </query> </request> <response statusCode="200"/> <response statusCode="202"/> <response statusCode="204"/> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> </command> <command name="create" version="2022-01-01"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/applicationgateways/{}" version="2022-01-01" swagger="mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9hcHBsaWNhdGlvbkdhdGV3YXlzL3thcHBsaWNhdGlvbkdhdGV3YXlOYW1lfQ==/V/MjAyMi0wMS0wMQ=="/> <argGroup name=""> <arg type="string" var="$Path.applicationGatewayName" options="name n" required="True" group="" idPart="name"> <help short="Name of the application gateway."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> </argGroup> <argGroup name="Parameters"> <arg type="ResourceId" var="$parameters.id" options="id" hide="True" group="Parameters"> <help short="Resource ID."/> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </arg> <arg type="object" var="$parameters.identity" options="identity" group="Parameters"> <help short="The identity of the application gateway, if configured."/> <arg type="string" var="$parameters.identity.type" options="type"> <help short="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> <item name="None" value="&quot;None&quot;"/> <item name="SystemAssigned" value="&quot;SystemAssigned&quot;"/> <item name="SystemAssigned, UserAssigned" value="&quot;SystemAssigned, UserAssigned&quot;"/> <item name="UserAssigned" value="&quot;UserAssigned&quot;"/> </enum> </arg> <arg type="object" var="$parameters.identity.userAssignedIdentities" options="user-assigned-identities"> <help short="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}'."/> <additionalProp> <item type="object"> <blank value="{}"/> </item> </additionalProp> </arg> </arg> <arg type="ResourceLocation" var="$parameters.location" options="location l" group="Parameters"> <help short="Resource location."/> </arg> <arg type="object" var="$parameters.tags" options="tags" group="Parameters"> <help short="Resource tags."/> <additionalProp> <item type="string"/> </additionalProp> </arg> <arg type="array<string>" var="$parameters.zones" options="zones" group="Parameters"> <help short="A list of availability zones denoting where the resource needs to come from."/> <item type="string"/> </arg> </argGroup> <argGroup name="Properties"> <arg type="array<object>" var="$parameters.properties.authenticationCertificates" options="authentication-certificates" group="Properties"> <help short="Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.authenticationCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.authenticationCertificates[].name" options="name"> <help short="Name of the authentication certificate that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.authenticationCertificates[].properties.data" options="data" group="Properties"> <help short="Certificate public data."/> </arg> </item> </arg> <arg type="object" var="$parameters.properties.autoscaleConfiguration" options="autoscale-configuration" group="Properties"> <help short="Autoscale Configuration."/> <arg type="integer32" var="$parameters.properties.autoscaleConfiguration.maxCapacity" options="max-capacity"> <help short="Upper bound on number of Application Gateway capacity."/> <format minimum="2"/> </arg> <arg type="integer32" var="$parameters.properties.autoscaleConfiguration.minCapacity" options="min-capacity" required="True"> <help short="Lower bound on number of Application Gateway capacity."/> <format minimum="0"/> </arg> </arg> <arg type="array<object>" var="$parameters.properties.backendAddressPools" options="backend-address-pools" group="Properties"> <help short="Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.backendAddressPools[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.backendAddressPools[].name" options="name"> <help short="Name of the backend address pool that is unique within an Application Gateway."/> </arg> <arg type="array<object>" var="$parameters.properties.backendAddressPools[].properties.backendAddresses" options="backend-addresses" group="Properties"> <help short="Backend addresses."/> <item type="object"> <arg type="string" var="$parameters.properties.backendAddressPools[].properties.backendAddresses[].fqdn" options="fqdn"> <help short="Fully qualified domain name (FQDN)."/> </arg> <arg type="string" var="$parameters.properties.backendAddressPools[].properties.backendAddresses[].ipAddress" options="ip-address"> <help short="IP address."/> </arg> </item> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.backendHttpSettingsCollection" options="backend-http-settings-collection" group="Properties"> <help short="Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].name" options="name"> <help short="Name of the backend http settings that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.affinityCookieName" options="affinity-cookie-name" group="Properties"> <help short="Cookie name to use for the affinity cookie."/> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.backendHttpSettingsCollection[].properties.authenticationCertificates" options="authentication-certificates" group="Properties"> <help short="Array of references to application gateway authentication certificates."/> <item type="@SubResource_create"/> </arg> <arg type="object" var="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining" options="connection-draining" group="Properties"> <help short="Connection draining of the backend http settings resource."/> <arg type="integer32" var="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.drainTimeoutInSec" options="drain-timeout-in-sec" required="True"> <help short="The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds."/> <format maximum="3600" minimum="1"/> </arg> <arg type="boolean" var="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.enabled" options="enabled" required="True"> <help short="Whether connection draining is enabled or not."/> </arg> </arg> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.cookieBasedAffinity" options="cookie-based-affinity" group="Properties"> <help short="Cookie based affinity."/> <enum> <item name="Disabled" value="&quot;Disabled&quot;"/> <item name="Enabled" value="&quot;Enabled&quot;"/> </enum> </arg> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.hostName" options="host-name" group="Properties"> <help short="Host header to be sent to the backend servers."/> </arg> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.path" options="path" group="Properties"> <help short="Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null."/> </arg> <arg type="boolean" var="$parameters.properties.backendHttpSettingsCollection[].properties.pickHostNameFromBackendAddress" options="pick-host-name-from-backend-address" group="Properties"> <help short="Whether to pick host header should be picked from the host name of the backend server. Default value is false."/> </arg> <arg type="integer32" var="$parameters.properties.backendHttpSettingsCollection[].properties.port" options="port" group="Properties"> <help short="The destination port on the backend."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.backendHttpSettingsCollection[].properties.probe" options="probe" group="Properties"> <help short="Probe resource of an application gateway."/> </arg> <arg type="boolean" var="$parameters.properties.backendHttpSettingsCollection[].properties.probeEnabled" options="probe-enabled" group="Properties"> <help short="Whether the probe is enabled. Default value is false."/> </arg> <arg type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.protocol" options="protocol" group="Properties"> <help short="The protocol used to communicate with the backend."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg type="integer32" var="$parameters.properties.backendHttpSettingsCollection[].properties.requestTimeout" options="request-timeout" group="Properties"> <help short="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."/> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.backendHttpSettingsCollection[].properties.trustedRootCertificates" options="trusted-root-certificates" group="Properties"> <help short="Array of references to application gateway trusted root certificates."/> <item type="@SubResource_create"/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.backendSettingsCollection" options="backend-settings-collection" group="Properties"> <help short="Backend settings of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.backendSettingsCollection[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.backendSettingsCollection[].name" options="name"> <help short="Name of the backend settings that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.backendSettingsCollection[].properties.hostName" options="host-name" group="Properties"> <help short="Server name indication to be sent to the backend servers for Tls protocol."/> </arg> <arg type="boolean" var="$parameters.properties.backendSettingsCollection[].properties.pickHostNameFromBackendAddress" options="pick-host-name-from-backend-address" group="Properties"> <help short="Whether to pick server name indication from the host name of the backend server for Tls protocol. Default value is false."/> </arg> <arg type="integer32" var="$parameters.properties.backendSettingsCollection[].properties.port" options="port" group="Properties"> <help short="The destination port on the backend."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.backendSettingsCollection[].properties.probe" options="probe" group="Properties"> <help short="Probe resource of an application gateway."/> </arg> <arg type="string" var="$parameters.properties.backendSettingsCollection[].properties.protocol" options="protocol" group="Properties"> <help short="The protocol used to communicate with the backend."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg type="integer32" var="$parameters.properties.backendSettingsCollection[].properties.timeout" options="timeout" group="Properties"> <help short="Connection timeout in seconds. Application Gateway will fail the request if response is not received within ConnectionTimeout. Acceptable values are from 1 second to 86400 seconds."/> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.backendSettingsCollection[].properties.trustedRootCertificates" options="trusted-root-certificates" group="Properties"> <help short="Array of references to application gateway trusted root certificates."/> <item type="@SubResource_create"/> </arg> </item> </arg> <arg type="array<@ApplicationGatewayCustomError_create>" var="$parameters.properties.customErrorConfigurations" options="custom-error-configurations" group="Properties"> <help short="Custom error configurations of the application gateway resource."/> <item type="@ApplicationGatewayCustomError_create"/> </arg> <arg type="boolean" var="$parameters.properties.enableFips" options="enable-fips" group="Properties"> <help short="Whether FIPS is enabled on the application gateway resource."/> </arg> <arg type="boolean" var="$parameters.properties.enableHttp2" options="enable-http2" group="Properties"> <help short="Whether HTTP2 is enabled on the application gateway resource."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.firewallPolicy" options="firewall-policy" group="Properties"> <help short="Reference to the FirewallPolicy resource."/> </arg> <arg type="boolean" var="$parameters.properties.forceFirewallPolicyAssociation" options="force-firewall-policy-association" group="Properties"> <help short="If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config."/> </arg> <arg type="array<object>" var="$parameters.properties.frontendIPConfigurations" options="frontend-ip-configurations" group="Properties"> <help short="Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.frontendIPConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.frontendIPConfigurations[].name" options="name"> <help short="Name of the frontend IP configuration that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.frontendIPConfigurations[].properties.privateIPAddress" options="private-ip-address" group="Properties"> <help short="PrivateIPAddress of the network interface IP Configuration."/> </arg> <arg type="string" var="$parameters.properties.frontendIPConfigurations[].properties.privateIPAllocationMethod" options="private-ip-allocation-method" group="Properties"> <help short="The private IP address allocation method."/> <enum> <item name="Dynamic" value="&quot;Dynamic&quot;"/> <item name="Static" value="&quot;Static&quot;"/> </enum> </arg> <arg type="@SubResource_create" var="$parameters.properties.frontendIPConfigurations[].properties.privateLinkConfiguration" options="private-link-configuration" group="Properties"> <help short="Reference to the application gateway private link configuration."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.frontendIPConfigurations[].properties.publicIPAddress" options="public-ip-address" group="Properties"> <help short="Reference to the PublicIP resource."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.frontendIPConfigurations[].properties.subnet" options="subnet" group="Properties"> <help short="Reference to the subnet resource."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.frontendPorts" options="frontend-ports" group="Properties"> <help short="Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.frontendPorts[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.frontendPorts[].name" options="name"> <help short="Name of the frontend port that is unique within an Application Gateway."/> </arg> <arg type="integer32" var="$parameters.properties.frontendPorts[].properties.port" options="port" group="Properties"> <help short="Frontend port."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.gatewayIPConfigurations" options="gateway-ip-configurations" group="Properties"> <help short="Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.gatewayIPConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.gatewayIPConfigurations[].name" options="name"> <help short="Name of the IP configuration that is unique within an Application Gateway."/> </arg> <arg type="object" var="$parameters.properties.gatewayIPConfigurations[].properties.subnet" options="subnet" group="Properties" cls="SubResource_create"> <help short="Reference to the subnet resource. A subnet from where application gateway gets its private address."/> <arg type="string" var="@SubResource_create.id" options="id"> <help short="Resource ID."/> </arg> </arg> </item> </arg> <arg type="object" var="$parameters.properties.globalConfiguration" options="global-configuration" group="Properties"> <help short="Global Configuration."/> <arg type="boolean" var="$parameters.properties.globalConfiguration.enableRequestBuffering" options="enable-request-buffering"> <help short="Enable request buffering."/> </arg> <arg type="boolean" var="$parameters.properties.globalConfiguration.enableResponseBuffering" options="enable-response-buffering"> <help short="Enable response buffering."/> </arg> </arg> <arg type="array<object>" var="$parameters.properties.httpListeners" options="http-listeners" group="Properties"> <help short="Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.httpListeners[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.httpListeners[].name" options="name"> <help short="Name of the HTTP listener that is unique within an Application Gateway."/> </arg> <arg type="array<object>" var="$parameters.properties.httpListeners[].properties.customErrorConfigurations" options="custom-error-configurations" group="Properties"> <help short="Custom error configurations of the HTTP listener."/> <item type="object" cls="ApplicationGatewayCustomError_create"> <arg type="string" var="@ApplicationGatewayCustomError_create.customErrorPageUrl" options="custom-error-page-url"> <help short="Error page URL of the application gateway customer error."/> </arg> <arg type="string" var="@ApplicationGatewayCustomError_create.statusCode" options="status-code"> <help short="Status code of the application gateway customer error."/> <enum> <item name="HttpStatus403" value="&quot;HttpStatus403&quot;"/> <item name="HttpStatus502" value="&quot;HttpStatus502&quot;"/> </enum> </arg> </item> </arg> <arg type="@SubResource_create" var="$parameters.properties.httpListeners[].properties.firewallPolicy" options="firewall-policy" group="Properties"> <help short="Reference to the FirewallPolicy resource."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.httpListeners[].properties.frontendIPConfiguration" options="frontend-ip-configuration" group="Properties"> <help short="Frontend IP configuration resource of an application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.httpListeners[].properties.frontendPort" options="frontend-port" group="Properties"> <help short="Frontend port resource of an application gateway."/> </arg> <arg type="string" var="$parameters.properties.httpListeners[].properties.hostName" options="host-name" group="Properties"> <help short="Host name of HTTP listener."/> </arg> <arg type="array<string>" var="$parameters.properties.httpListeners[].properties.hostNames" options="host-names" group="Properties"> <help short="List of Host names for HTTP Listener that allows special wildcard characters as well."/> <item type="string"/> </arg> <arg type="string" var="$parameters.properties.httpListeners[].properties.protocol" options="protocol" group="Properties"> <help short="Protocol of the HTTP listener."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg type="boolean" var="$parameters.properties.httpListeners[].properties.requireServerNameIndication" options="require-server-name-indication" group="Properties"> <help short="Applicable only if protocol is https. Enables SNI for multi-hosting."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.httpListeners[].properties.sslCertificate" options="ssl-certificate" group="Properties"> <help short="SSL certificate resource of an application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.httpListeners[].properties.sslProfile" options="ssl-profile" group="Properties"> <help short="SSL profile resource of the application gateway."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.listeners" options="listeners" group="Properties"> <help short="Listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.listeners[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.listeners[].name" options="name"> <help short="Name of the listener that is unique within an Application Gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.listeners[].properties.frontendIPConfiguration" options="frontend-ip-configuration" group="Properties"> <help short="Frontend IP configuration resource of an application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.listeners[].properties.frontendPort" options="frontend-port" group="Properties"> <help short="Frontend port resource of an application gateway."/> </arg> <arg type="string" var="$parameters.properties.listeners[].properties.protocol" options="protocol" group="Properties"> <help short="Protocol of the listener."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg type="@SubResource_create" var="$parameters.properties.listeners[].properties.sslCertificate" options="ssl-certificate" group="Properties"> <help short="SSL certificate resource of an application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.listeners[].properties.sslProfile" options="ssl-profile" group="Properties"> <help short="SSL profile resource of the application gateway."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.loadDistributionPolicies" options="load-distribution-policies" group="Properties"> <help short="Load distribution policies of the application gateway resource."/> <item type="object"> <arg type="string" var="$parameters.properties.loadDistributionPolicies[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.loadDistributionPolicies[].name" options="name"> <help short="Name of the load distribution policy that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionAlgorithm" options="load-distribution-algorithm" group="Properties"> <help short="Load Distribution Targets resource of an application gateway."/> <enum> <item name="IpHash" value="&quot;IpHash&quot;"/> <item name="LeastConnections" value="&quot;LeastConnections&quot;"/> <item name="RoundRobin" value="&quot;RoundRobin&quot;"/> </enum> </arg> <arg type="array<object>" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets" options="load-distribution-targets" group="Properties"> <help short="Load Distribution Targets resource of an application gateway."/> <item type="object"> <arg type="string" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].name" options="name"> <help short="Name of the load distribution policy that is unique within an Application Gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of the application gateway."/> </arg> <arg type="integer32" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.weightPerServer" options="weight-per-server" group="Properties"> <help short="Weight per server. Range between 1 and 100."/> <format maximum="100" minimum="1"/> </arg> </item> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.privateLinkConfigurations" options="private-link-configurations" group="Properties"> <help short="PrivateLink configurations on application gateway."/> <item type="object"> <arg type="string" var="$parameters.properties.privateLinkConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.privateLinkConfigurations[].name" options="name"> <help short="Name of the private link configuration that is unique within an Application Gateway."/> </arg> <arg type="array<object>" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations" options="ip-configurations" group="Properties"> <help short="An array of application gateway private link ip configurations."/> <item type="object"> <arg type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].name" options="name"> <help short="The name of application gateway private link ip configuration."/> </arg> <arg type="boolean" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.primary" options="primary" group="Properties"> <help short="Whether the ip configuration is primary or not."/> </arg> <arg type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAddress" options="private-ip-address" group="Properties"> <help short="The private IP address of the IP configuration."/> </arg> <arg type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAllocationMethod" options="private-ip-allocation-method" group="Properties"> <help short="The private IP address allocation method."/> <enum> <item name="Dynamic" value="&quot;Dynamic&quot;"/> <item name="Static" value="&quot;Static&quot;"/> </enum> </arg> <arg type="@SubResource_create" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.subnet" options="subnet" group="Properties"> <help short="Reference to the subnet resource."/> </arg> </item> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.probes" options="probes" group="Properties"> <help short="Probes of the application gateway resource."/> <item type="object"> <arg type="string" var="$parameters.properties.probes[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.probes[].name" options="name"> <help short="Name of the probe that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.probes[].properties.host" options="host" group="Properties"> <help short="Host name to send the probe to."/> </arg> <arg type="integer32" var="$parameters.properties.probes[].properties.interval" options="interval" group="Properties"> <help short="The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds."/> </arg> <arg type="object" var="$parameters.properties.probes[].properties.match" options="match" group="Properties"> <help short="Criterion for classifying a healthy probe response."/> <arg type="string" var="$parameters.properties.probes[].properties.match.body" options="body"> <help short="Body that must be contained in the health response. Default value is empty."/> </arg> <arg type="array<string>" var="$parameters.properties.probes[].properties.match.statusCodes" options="status-codes"> <help short="Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399."/> <item type="string"/> </arg> </arg> <arg type="integer32" var="$parameters.properties.probes[].properties.minServers" options="min-servers" group="Properties"> <help short="Minimum number of servers that are always marked healthy. Default value is 0."/> </arg> <arg type="string" var="$parameters.properties.probes[].properties.path" options="path" group="Properties"> <help short="Relative path of probe. Valid path starts from '/'. Probe is sent to <Protocol>://<host>:<port><path>."/> </arg> <arg type="boolean" var="$parameters.properties.probes[].properties.pickHostNameFromBackendHttpSettings" options="pick-host-name-from-backend-http-settings" group="Properties"> <help short="Whether the host header should be picked from the backend http settings. Default value is false."/> </arg> <arg type="boolean" var="$parameters.properties.probes[].properties.pickHostNameFromBackendSettings" options="pick-host-name-from-backend-settings" group="Properties"> <help short="Whether the server name indication should be picked from the backend settings for Tls protocol. Default value is false."/> </arg> <arg type="integer32" var="$parameters.properties.probes[].properties.port" options="port" group="Properties"> <help short="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."/> <format maximum="65535" minimum="1"/> </arg> <arg type="string" var="$parameters.properties.probes[].properties.protocol" options="protocol" group="Properties"> <help short="The protocol used for the probe."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg type="integer32" var="$parameters.properties.probes[].properties.timeout" options="timeout" group="Properties"> <help short="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."/> </arg> <arg type="integer32" var="$parameters.properties.probes[].properties.unhealthyThreshold" options="unhealthy-threshold" group="Properties"> <help short="The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.redirectConfigurations" options="redirect-configurations" group="Properties"> <help short="Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.redirectConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.redirectConfigurations[].name" options="name"> <help short="Name of the redirect configuration that is unique within an Application Gateway."/> </arg> <arg type="boolean" var="$parameters.properties.redirectConfigurations[].properties.includePath" options="include-path" group="Properties"> <help short="Include path in the redirected url."/> </arg> <arg type="boolean" var="$parameters.properties.redirectConfigurations[].properties.includeQueryString" options="include-query-string" group="Properties"> <help short="Include query string in the redirected url."/> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.redirectConfigurations[].properties.pathRules" options="path-rules" group="Properties"> <help short="Path rules specifying redirect configuration."/> <item type="@SubResource_create"/> </arg> <arg type="string" var="$parameters.properties.redirectConfigurations[].properties.redirectType" options="redirect-type" group="Properties"> <help short="HTTP redirection type."/> <enum> <item name="Found" value="&quot;Found&quot;"/> <item name="Permanent" value="&quot;Permanent&quot;"/> <item name="SeeOther" value="&quot;SeeOther&quot;"/> <item name="Temporary" value="&quot;Temporary&quot;"/> </enum> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.redirectConfigurations[].properties.requestRoutingRules" options="request-routing-rules" group="Properties"> <help short="Request routing specifying redirect configuration."/> <item type="@SubResource_create"/> </arg> <arg type="@SubResource_create" var="$parameters.properties.redirectConfigurations[].properties.targetListener" options="target-listener" group="Properties"> <help short="Reference to a listener to redirect the request to."/> </arg> <arg type="string" var="$parameters.properties.redirectConfigurations[].properties.targetUrl" options="target-url" group="Properties"> <help short="Url to redirect the request to."/> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.redirectConfigurations[].properties.urlPathMaps" options="url-path-maps" group="Properties"> <help short="Url path maps specifying default redirect configuration."/> <item type="@SubResource_create"/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.requestRoutingRules" options="request-routing-rules" group="Properties"> <help short="Request routing rules of the application gateway resource."/> <item type="object"> <arg type="string" var="$parameters.properties.requestRoutingRules[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.requestRoutingRules[].name" options="name"> <help short="Name of the request routing rule that is unique within an Application Gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of the application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.backendHttpSettings" options="backend-http-settings" group="Properties"> <help short="Backend http settings resource of the application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.httpListener" options="http-listener" group="Properties"> <help short="Http listener resource of the application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.loadDistributionPolicy" options="load-distribution-policy" group="Properties"> <help short="Load Distribution Policy resource of the application gateway."/> </arg> <arg type="integer32" var="$parameters.properties.requestRoutingRules[].properties.priority" options="priority" group="Properties"> <help short="Priority of the request routing rule."/> <format maximum="20000" minimum="1"/> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.redirectConfiguration" options="redirect-configuration" group="Properties"> <help short="Redirect configuration resource of the application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.rewriteRuleSet" options="rewrite-rule-set" group="Properties"> <help short="Rewrite Rule Set resource in Basic rule of the application gateway."/> </arg> <arg type="string" var="$parameters.properties.requestRoutingRules[].properties.ruleType" options="rule-type" group="Properties"> <help short="Rule type."/> <enum> <item name="Basic" value="&quot;Basic&quot;"/> <item name="PathBasedRouting" value="&quot;PathBasedRouting&quot;"/> </enum> </arg> <arg type="@SubResource_create" var="$parameters.properties.requestRoutingRules[].properties.urlPathMap" options="url-path-map" group="Properties"> <help short="URL path map resource of the application gateway."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.rewriteRuleSets" options="rewrite-rule-sets" group="Properties"> <help short="Rewrite rules for the application gateway resource."/> <item type="object"> <arg type="string" var="$parameters.properties.rewriteRuleSets[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.rewriteRuleSets[].name" options="name"> <help short="Name of the rewrite rule set that is unique within an Application Gateway."/> </arg> <arg type="array<object>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules" options="rewrite-rules" group="Properties"> <help short="Rewrite rules in the rewrite rule set."/> <item type="object"> <arg type="object" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet" options="action-set"> <help short="Set of actions to be done as part of the rewrite Rule."/> <arg type="array<object>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.requestHeaderConfigurations" options="request-header-configurations"> <help short="Request Header Actions in the Action Set."/> <item type="object" cls="ApplicationGatewayHeaderConfiguration_create"> <arg type="string" var="@ApplicationGatewayHeaderConfiguration_create.headerName" options="header-name"> <help short="Header name of the header configuration."/> </arg> <arg type="string" var="@ApplicationGatewayHeaderConfiguration_create.headerValue" options="header-value"> <help short="Header value of the header configuration."/> </arg> </item> </arg> <arg type="array<@ApplicationGatewayHeaderConfiguration_create>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.responseHeaderConfigurations" options="response-header-configurations"> <help short="Response Header Actions in the Action Set."/> <item type="@ApplicationGatewayHeaderConfiguration_create"/> </arg> <arg type="object" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration" options="url-configuration"> <help short="Url Configuration Action in the Action Set."/> <arg type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedPath" options="modified-path"> <help short="Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null."/> </arg> <arg type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedQueryString" options="modified-query-string"> <help short="Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null."/> </arg> <arg type="boolean" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.reroute" options="reroute"> <help short="If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false."/> </arg> </arg> </arg> <arg type="array<object>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions" options="conditions"> <help short="Conditions based on which the action set execution will be evaluated."/> <item type="object"> <arg type="boolean" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].ignoreCase" options="ignore-case"> <help short="Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison."/> </arg> <arg type="boolean" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].negate" options="negate"> <help short="Setting this value as truth will force to check the negation of the condition given by the user."/> </arg> <arg type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].pattern" options="pattern"> <help short="The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition."/> </arg> <arg type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].variable" options="variable"> <help short="The condition parameter of the RewriteRuleCondition."/> </arg> </item> </arg> <arg type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].name" options="name"> <help short="Name of the rewrite rule that is unique within an Application Gateway."/> </arg> <arg type="integer" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].ruleSequence" options="rule-sequence"> <help short="Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet."/> </arg> </item> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.routingRules" options="routing-rules" group="Properties"> <help short="Routing rules of the application gateway resource."/> <item type="object"> <arg type="string" var="$parameters.properties.routingRules[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.routingRules[].name" options="name"> <help short="Name of the routing rule that is unique within an Application Gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.routingRules[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of the application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.routingRules[].properties.backendSettings" options="backend-settings" group="Properties"> <help short="Backend settings resource of the application gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.routingRules[].properties.listener" options="listener" group="Properties"> <help short="Listener resource of the application gateway."/> </arg> <arg type="integer32" var="$parameters.properties.routingRules[].properties.priority" options="priority" group="Properties"> <help short="Priority of the routing rule."/> <format maximum="20000" minimum="1"/> </arg> <arg type="string" var="$parameters.properties.routingRules[].properties.ruleType" options="rule-type" group="Properties"> <help short="Rule type."/> <enum> <item name="Basic" value="&quot;Basic&quot;"/> <item name="PathBasedRouting" value="&quot;PathBasedRouting&quot;"/> </enum> </arg> </item> </arg> <arg type="object" var="$parameters.properties.sku" options="sku" group="Properties"> <help short="SKU of the application gateway resource."/> <arg type="integer32" var="$parameters.properties.sku.capacity" options="capacity"> <help short="Capacity (instance count) of an application gateway."/> </arg> <arg type="string" var="$parameters.properties.sku.name" options="name"> <help short="Name of an application gateway SKU."/> <enum> <item name="Standard_Large" value="&quot;Standard_Large&quot;"/> <item name="Standard_Medium" value="&quot;Standard_Medium&quot;"/> <item name="Standard_Small" value="&quot;Standard_Small&quot;"/> <item name="Standard_v2" value="&quot;Standard_v2&quot;"/> <item name="WAF_Large" value="&quot;WAF_Large&quot;"/> <item name="WAF_Medium" value="&quot;WAF_Medium&quot;"/> <item name="WAF_v2" value="&quot;WAF_v2&quot;"/> </enum> </arg> <arg type="string" var="$parameters.properties.sku.tier" options="tier"> <help short="Tier of an application gateway."/> <enum> <item name="Standard" value="&quot;Standard&quot;"/> <item name="Standard_v2" value="&quot;Standard_v2&quot;"/> <item name="WAF" value="&quot;WAF&quot;"/> <item name="WAF_v2" value="&quot;WAF_v2&quot;"/> </enum> </arg> </arg> <arg type="array<object>" var="$parameters.properties.sslCertificates" options="ssl-certificates" group="Properties"> <help short="SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.sslCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.sslCertificates[].name" options="name"> <help short="Name of the SSL certificate that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.sslCertificates[].properties.data" options="data" group="Properties"> <help short="Base-64 encoded pfx certificate. Only applicable in PUT Request."/> </arg> <arg type="string" var="$parameters.properties.sslCertificates[].properties.keyVaultSecretId" options="key-vault-secret-id" group="Properties"> <help short="Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault."/> </arg> <arg type="string" var="$parameters.properties.sslCertificates[].properties.password" options="password" group="Properties"> <help short="Password for the pfx file specified in data. Only applicable in PUT request."/> </arg> </item> </arg> <arg type="object" var="$parameters.properties.sslPolicy" options="ssl-policy" group="Properties" cls="ApplicationGatewaySslPolicy_create"> <help short="SSL policy of the application gateway resource."/> <arg type="array<string>" var="@ApplicationGatewaySslPolicy_create.cipherSuites" options="cipher-suites"> <help short="Ssl cipher suites to be enabled in the specified order to application gateway."/> <item type="string"> <enum> <item name="TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_128_CBC_SHA" value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_256_CBC_SHA" value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384" value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item name="TLS_RSA_WITH_3DES_EDE_CBC_SHA" value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item name="TLS_RSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_RSA_WITH_AES_128_CBC_SHA256" value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_RSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_RSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_RSA_WITH_AES_256_CBC_SHA256" value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item name="TLS_RSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </arg> <arg type="array<string>" var="@ApplicationGatewaySslPolicy_create.disabledSslProtocols" options="disabled-ssl-protocols"> <help short="Ssl protocols to be disabled on application gateway."/> <item type="string"> <enum> <item name="TLSv1_0" value="&quot;TLSv1_0&quot;"/> <item name="TLSv1_1" value="&quot;TLSv1_1&quot;"/> <item name="TLSv1_2" value="&quot;TLSv1_2&quot;"/> <item name="TLSv1_3" value="&quot;TLSv1_3&quot;"/> </enum> </item> </arg> <arg type="string" var="@ApplicationGatewaySslPolicy_create.minProtocolVersion" options="min-protocol-version"> <help short="Minimum version of Ssl protocol to be supported on application gateway."/> <enum> <item name="TLSv1_0" value="&quot;TLSv1_0&quot;"/> <item name="TLSv1_1" value="&quot;TLSv1_1&quot;"/> <item name="TLSv1_2" value="&quot;TLSv1_2&quot;"/> <item name="TLSv1_3" value="&quot;TLSv1_3&quot;"/> </enum> </arg> <arg type="string" var="@ApplicationGatewaySslPolicy_create.policyName" options="policy-name"> <help short="Name of Ssl predefined policy."/> <enum> <item name="AppGwSslPolicy20150501" value="&quot;AppGwSslPolicy20150501&quot;"/> <item name="AppGwSslPolicy20170401" value="&quot;AppGwSslPolicy20170401&quot;"/> <item name="AppGwSslPolicy20170401S" value="&quot;AppGwSslPolicy20170401S&quot;"/> <item name="AppGwSslPolicy20220101" value="&quot;AppGwSslPolicy20220101&quot;"/> <item name="AppGwSslPolicy20220101S" value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </arg> <arg type="string" var="@ApplicationGatewaySslPolicy_create.policyType" options="policy-type"> <help short="Type of Ssl Policy."/> <enum> <item name="Custom" value="&quot;Custom&quot;"/> <item name="CustomV2" value="&quot;CustomV2&quot;"/> <item name="Predefined" value="&quot;Predefined&quot;"/> </enum> </arg> </arg> <arg type="array<object>" var="$parameters.properties.sslProfiles" options="ssl-profiles" group="Properties"> <help short="SSL profiles of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.sslProfiles[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.sslProfiles[].name" options="name"> <help short="Name of the SSL profile that is unique within an Application Gateway."/> </arg> <arg type="object" var="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration" options="client-auth-configuration" group="Properties"> <help short="Client authentication configuration of the application gateway resource."/> <arg type="boolean" var="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration.verifyClientCertIssuerDN" options="verify-client-cert-issuer-dn"> <help short="Verify client certificate issuer name on the application gateway."/> </arg> </arg> <arg type="@ApplicationGatewaySslPolicy_create" var="$parameters.properties.sslProfiles[].properties.sslPolicy" options="ssl-policy" group="Properties"> <help short="SSL policy of the application gateway resource."/> </arg> <arg type="array<@SubResource_create>" var="$parameters.properties.sslProfiles[].properties.trustedClientCertificates" options="trusted-client-certificates" group="Properties"> <help short="Array of references to application gateway trusted client certificates."/> <item type="@SubResource_create"/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.trustedClientCertificates" options="trusted-client-certificates" group="Properties"> <help short="Trusted client certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.trustedClientCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.trustedClientCertificates[].name" options="name"> <help short="Name of the trusted client certificate that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.trustedClientCertificates[].properties.data" options="data" group="Properties"> <help short="Certificate public data."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.trustedRootCertificates" options="trusted-root-certificates" group="Properties"> <help short="Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.trustedRootCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.trustedRootCertificates[].name" options="name"> <help short="Name of the trusted root certificate that is unique within an Application Gateway."/> </arg> <arg type="string" var="$parameters.properties.trustedRootCertificates[].properties.data" options="data" group="Properties"> <help short="Certificate public data."/> </arg> <arg type="string" var="$parameters.properties.trustedRootCertificates[].properties.keyVaultSecretId" options="key-vault-secret-id" group="Properties"> <help short="Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault."/> </arg> </item> </arg> <arg type="array<object>" var="$parameters.properties.urlPathMaps" options="url-path-maps" group="Properties"> <help short="URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item type="object"> <arg type="string" var="$parameters.properties.urlPathMaps[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.urlPathMaps[].name" options="name"> <help short="Name of the URL path map that is unique within an Application Gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.defaultBackendAddressPool" options="default-backend-address-pool" group="Properties"> <help short="Default backend address pool resource of URL path map."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.defaultBackendHttpSettings" options="default-backend-http-settings" group="Properties"> <help short="Default backend http settings resource of URL path map."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.defaultLoadDistributionPolicy" options="default-load-distribution-policy" group="Properties"> <help short="Default Load Distribution Policy resource of URL path map."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.defaultRedirectConfiguration" options="default-redirect-configuration" group="Properties"> <help short="Default redirect configuration resource of URL path map."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.defaultRewriteRuleSet" options="default-rewrite-rule-set" group="Properties"> <help short="Default Rewrite rule set resource of URL path map."/> </arg> <arg type="array<object>" var="$parameters.properties.urlPathMaps[].properties.pathRules" options="path-rules" group="Properties"> <help short="Path rule of URL path map resource."/> <item type="object"> <arg type="string" var="$parameters.properties.urlPathMaps[].properties.pathRules[].id" options="id"> <help short="Resource ID."/> </arg> <arg type="string" var="$parameters.properties.urlPathMaps[].properties.pathRules[].name" options="name"> <help short="Name of the path rule that is unique within an Application Gateway."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of URL path map path rule."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendHttpSettings" options="backend-http-settings" group="Properties"> <help short="Backend http settings resource of URL path map path rule."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.firewallPolicy" options="firewall-policy" group="Properties"> <help short="Reference to the FirewallPolicy resource."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.loadDistributionPolicy" options="load-distribution-policy" group="Properties"> <help short="Load Distribution Policy resource of URL path map path rule."/> </arg> <arg type="array<string>" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.paths" options="paths" group="Properties"> <help short="Path rules of URL path map."/> <item type="string"/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.redirectConfiguration" options="redirect-configuration" group="Properties"> <help short="Redirect configuration resource of URL path map path rule."/> </arg> <arg type="@SubResource_create" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.rewriteRuleSet" options="rewrite-rule-set" group="Properties"> <help short="Rewrite rule set resource of URL path map path rule."/> </arg> </item> </arg> </item> </arg> <arg type="object" var="$parameters.properties.webApplicationFirewallConfiguration" options="web-application-firewall-configuration" group="Properties"> <help short="Web application firewall configuration."/> <arg type="array<object>" var="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups" options="disabled-rule-groups"> <help short="The disabled rule groups."/> <item type="object"> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].ruleGroupName" options="rule-group-name" required="True"> <help short="The name of the rule group that will be disabled."/> </arg> <arg type="array<integer32>" var="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].rules" options="rules"> <help short="The list of rules that will be disabled. If null, all rules of the rule group will be disabled."/> <item type="integer32"/> </arg> </item> </arg> <arg type="boolean" var="$parameters.properties.webApplicationFirewallConfiguration.enabled" options="enabled" required="True"> <help short="Whether the web application firewall is enabled or not."/> </arg> <arg type="array<object>" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions" options="exclusions"> <help short="The exclusion list."/> <item type="object"> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].matchVariable" options="match-variable" required="True"> <help short="The variable to be excluded."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selector" options="selector" required="True"> <help short="When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selectorMatchOperator" options="selector-match-operator" required="True"> <help short="When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to."/> </arg> </item> </arg> <arg type="integer32" var="$parameters.properties.webApplicationFirewallConfiguration.fileUploadLimitInMb" options="file-upload-limit-in-mb"> <help short="Maximum file upload size in Mb for WAF."/> <format minimum="0"/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.firewallMode" options="firewall-mode" required="True"> <help short="Web application firewall mode."/> <enum> <item name="Detection" value="&quot;Detection&quot;"/> <item name="Prevention" value="&quot;Prevention&quot;"/> </enum> </arg> <arg type="integer32" var="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySize" options="max-request-body-size"> <help short="Maximum request body size for WAF."/> <format maximum="128" minimum="8"/> </arg> <arg type="integer32" var="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySizeInKb" options="max-request-body-size-in-kb"> <help short="Maximum request body size in Kb for WAF."/> <format maximum="128" minimum="8"/> </arg> <arg type="boolean" var="$parameters.properties.webApplicationFirewallConfiguration.requestBodyCheck" options="request-body-check"> <help short="Whether allow WAF to check request Body."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.ruleSetType" options="rule-set-type" required="True"> <help short="The type of the web application firewall rule set. Possible values are: 'OWASP'."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.ruleSetVersion" options="rule-set-version" required="True"> <help short="The version of the rule set type."/> </arg> </arg> </argGroup> <operation operationId="ApplicationGateways_CreateOrUpdate"> <longRunning finalStateVia="azure-async-operation"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}"> <request method="put"> <path> <param type="string" name="applicationGatewayName" arg="$Path.applicationGatewayName" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2022-01-01&quot;"/> </const> </query> <body> <json> <schema type="object" name="parameters" required="True" clientFlatten="True"> <prop type="ResourceId" name="id" arg="$parameters.id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </prop> <prop type="IdentityObject" name="identity" arg="$parameters.identity"> <prop type="string" name="type" arg="$parameters.identity.type"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;SystemAssigned&quot;"/> <item value="&quot;SystemAssigned, UserAssigned&quot;"/> <item value="&quot;UserAssigned&quot;"/> </enum> </prop> <prop type="object" name="userAssignedIdentities" arg="$parameters.identity.userAssignedIdentities"> <additionalProp> <item type="object"/> </additionalProp> </prop> </prop> <prop type="ResourceLocation" name="location" arg="$parameters.location"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="authenticationCertificates" arg="$parameters.properties.authenticationCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.authenticationCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.authenticationCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.authenticationCertificates[].properties.data"/> </prop> </item> </prop> <prop type="object" name="autoscaleConfiguration" arg="$parameters.properties.autoscaleConfiguration"> <prop type="integer32" name="maxCapacity" arg="$parameters.properties.autoscaleConfiguration.maxCapacity"> <format minimum="2"/> </prop> <prop type="integer32" name="minCapacity" arg="$parameters.properties.autoscaleConfiguration.minCapacity" required="True"> <format minimum="0"/> </prop> </prop> <prop type="array<object>" name="backendAddressPools" arg="$parameters.properties.backendAddressPools"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.backendAddressPools[].id"/> <prop type="string" name="name" arg="$parameters.properties.backendAddressPools[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="backendAddresses" arg="$parameters.properties.backendAddressPools[].properties.backendAddresses"> <item type="object"> <prop type="string" name="fqdn" arg="$parameters.properties.backendAddressPools[].properties.backendAddresses[].fqdn"/> <prop type="string" name="ipAddress" arg="$parameters.properties.backendAddressPools[].properties.backendAddresses[].ipAddress"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="backendHttpSettingsCollection" arg="$parameters.properties.backendHttpSettingsCollection"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.backendHttpSettingsCollection[].id"/> <prop type="string" name="name" arg="$parameters.properties.backendHttpSettingsCollection[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="affinityCookieName" arg="$parameters.properties.backendHttpSettingsCollection[].properties.affinityCookieName"/> <prop type="array<@SubResource_create>" name="authenticationCertificates" arg="$parameters.properties.backendHttpSettingsCollection[].properties.authenticationCertificates"> <item type="@SubResource_create"/> </prop> <prop type="object" name="connectionDraining" arg="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining"> <prop type="integer32" name="drainTimeoutInSec" arg="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.drainTimeoutInSec" required="True"> <format maximum="3600" minimum="1"/> </prop> <prop type="boolean" name="enabled" arg="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.enabled" required="True"/> </prop> <prop type="string" name="cookieBasedAffinity" arg="$parameters.properties.backendHttpSettingsCollection[].properties.cookieBasedAffinity"> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="hostName" arg="$parameters.properties.backendHttpSettingsCollection[].properties.hostName"/> <prop type="string" name="path" arg="$parameters.properties.backendHttpSettingsCollection[].properties.path"/> <prop type="boolean" name="pickHostNameFromBackendAddress" arg="$parameters.properties.backendHttpSettingsCollection[].properties.pickHostNameFromBackendAddress"/> <prop type="integer32" name="port" arg="$parameters.properties.backendHttpSettingsCollection[].properties.port"/> <prop type="@SubResource_create" name="probe" arg="$parameters.properties.backendHttpSettingsCollection[].properties.probe"/> <prop type="boolean" name="probeEnabled" arg="$parameters.properties.backendHttpSettingsCollection[].properties.probeEnabled"/> <prop type="string" name="protocol" arg="$parameters.properties.backendHttpSettingsCollection[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="integer32" name="requestTimeout" arg="$parameters.properties.backendHttpSettingsCollection[].properties.requestTimeout"/> <prop type="array<@SubResource_create>" name="trustedRootCertificates" arg="$parameters.properties.backendHttpSettingsCollection[].properties.trustedRootCertificates"> <item type="@SubResource_create"/> </prop> </prop> </item> </prop> <prop type="array<object>" name="backendSettingsCollection" arg="$parameters.properties.backendSettingsCollection"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.backendSettingsCollection[].id"/> <prop type="string" name="name" arg="$parameters.properties.backendSettingsCollection[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="hostName" arg="$parameters.properties.backendSettingsCollection[].properties.hostName"/> <prop type="boolean" name="pickHostNameFromBackendAddress" arg="$parameters.properties.backendSettingsCollection[].properties.pickHostNameFromBackendAddress"/> <prop type="integer32" name="port" arg="$parameters.properties.backendSettingsCollection[].properties.port"/> <prop type="@SubResource_create" name="probe" arg="$parameters.properties.backendSettingsCollection[].properties.probe"/> <prop type="string" name="protocol" arg="$parameters.properties.backendSettingsCollection[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="integer32" name="timeout" arg="$parameters.properties.backendSettingsCollection[].properties.timeout"/> <prop type="array<@SubResource_create>" name="trustedRootCertificates" arg="$parameters.properties.backendSettingsCollection[].properties.trustedRootCertificates"> <item type="@SubResource_create"/> </prop> </prop> </item> </prop> <prop type="array<@ApplicationGatewayCustomError_create>" name="customErrorConfigurations" arg="$parameters.properties.customErrorConfigurations"> <item type="@ApplicationGatewayCustomError_create"/> </prop> <prop type="boolean" name="enableFips" arg="$parameters.properties.enableFips"/> <prop type="boolean" name="enableHttp2" arg="$parameters.properties.enableHttp2"/> <prop type="@SubResource_create" name="firewallPolicy" arg="$parameters.properties.firewallPolicy"/> <prop type="boolean" name="forceFirewallPolicyAssociation" arg="$parameters.properties.forceFirewallPolicyAssociation"/> <prop type="array<object>" name="frontendIPConfigurations" arg="$parameters.properties.frontendIPConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.frontendIPConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.frontendIPConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress" arg="$parameters.properties.frontendIPConfigurations[].properties.privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod" arg="$parameters.properties.frontendIPConfigurations[].properties.privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_create" name="privateLinkConfiguration" arg="$parameters.properties.frontendIPConfigurations[].properties.privateLinkConfiguration"/> <prop type="@SubResource_create" name="publicIPAddress" arg="$parameters.properties.frontendIPConfigurations[].properties.publicIPAddress"/> <prop type="@SubResource_create" name="subnet" arg="$parameters.properties.frontendIPConfigurations[].properties.subnet"/> </prop> </item> </prop> <prop type="array<object>" name="frontendPorts" arg="$parameters.properties.frontendPorts"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.frontendPorts[].id"/> <prop type="string" name="name" arg="$parameters.properties.frontendPorts[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="port" arg="$parameters.properties.frontendPorts[].properties.port"/> </prop> </item> </prop> <prop type="array<object>" name="gatewayIPConfigurations" arg="$parameters.properties.gatewayIPConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.gatewayIPConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.gatewayIPConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="subnet" arg="$parameters.properties.gatewayIPConfigurations[].properties.subnet" cls="SubResource_create"> <prop type="string" name="id" arg="@SubResource_create.id"/> </prop> </prop> </item> </prop> <prop type="object" name="globalConfiguration" arg="$parameters.properties.globalConfiguration"> <prop type="boolean" name="enableRequestBuffering" arg="$parameters.properties.globalConfiguration.enableRequestBuffering"/> <prop type="boolean" name="enableResponseBuffering" arg="$parameters.properties.globalConfiguration.enableResponseBuffering"/> </prop> <prop type="array<object>" name="httpListeners" arg="$parameters.properties.httpListeners"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.httpListeners[].id"/> <prop type="string" name="name" arg="$parameters.properties.httpListeners[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="customErrorConfigurations" arg="$parameters.properties.httpListeners[].properties.customErrorConfigurations"> <item type="object" cls="ApplicationGatewayCustomError_create"> <prop type="string" name="customErrorPageUrl" arg="@ApplicationGatewayCustomError_create.customErrorPageUrl"/> <prop type="string" name="statusCode" arg="@ApplicationGatewayCustomError_create.statusCode"> <enum> <item value="&quot;HttpStatus403&quot;"/> <item value="&quot;HttpStatus502&quot;"/> </enum> </prop> </item> </prop> <prop type="@SubResource_create" name="firewallPolicy" arg="$parameters.properties.httpListeners[].properties.firewallPolicy"/> <prop type="@SubResource_create" name="frontendIPConfiguration" arg="$parameters.properties.httpListeners[].properties.frontendIPConfiguration"/> <prop type="@SubResource_create" name="frontendPort" arg="$parameters.properties.httpListeners[].properties.frontendPort"/> <prop type="string" name="hostName" arg="$parameters.properties.httpListeners[].properties.hostName"/> <prop type="array<string>" name="hostNames" arg="$parameters.properties.httpListeners[].properties.hostNames"> <item type="string"/> </prop> <prop type="string" name="protocol" arg="$parameters.properties.httpListeners[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="boolean" name="requireServerNameIndication" arg="$parameters.properties.httpListeners[].properties.requireServerNameIndication"/> <prop type="@SubResource_create" name="sslCertificate" arg="$parameters.properties.httpListeners[].properties.sslCertificate"/> <prop type="@SubResource_create" name="sslProfile" arg="$parameters.properties.httpListeners[].properties.sslProfile"/> </prop> </item> </prop> <prop type="array<object>" name="listeners" arg="$parameters.properties.listeners"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.listeners[].id"/> <prop type="string" name="name" arg="$parameters.properties.listeners[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_create" name="frontendIPConfiguration" arg="$parameters.properties.listeners[].properties.frontendIPConfiguration"/> <prop type="@SubResource_create" name="frontendPort" arg="$parameters.properties.listeners[].properties.frontendPort"/> <prop type="string" name="protocol" arg="$parameters.properties.listeners[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="@SubResource_create" name="sslCertificate" arg="$parameters.properties.listeners[].properties.sslCertificate"/> <prop type="@SubResource_create" name="sslProfile" arg="$parameters.properties.listeners[].properties.sslProfile"/> </prop> </item> </prop> <prop type="array<object>" name="loadDistributionPolicies" arg="$parameters.properties.loadDistributionPolicies"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.loadDistributionPolicies[].id"/> <prop type="string" name="name" arg="$parameters.properties.loadDistributionPolicies[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="loadDistributionAlgorithm" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionAlgorithm"> <enum> <item value="&quot;IpHash&quot;"/> <item value="&quot;LeastConnections&quot;"/> <item value="&quot;RoundRobin&quot;"/> </enum> </prop> <prop type="array<object>" name="loadDistributionTargets" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].id"/> <prop type="string" name="name" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_create" name="backendAddressPool" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.backendAddressPool"/> <prop type="integer32" name="weightPerServer" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.weightPerServer"> <format maximum="100" minimum="1"/> </prop> </prop> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="privateLinkConfigurations" arg="$parameters.properties.privateLinkConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.privateLinkConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.privateLinkConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="ipConfigurations" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.primary"/> <prop type="string" name="privateIPAddress" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_create" name="subnet" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.subnet"/> </prop> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="probes" arg="$parameters.properties.probes"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.probes[].id"/> <prop type="string" name="name" arg="$parameters.properties.probes[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="host" arg="$parameters.properties.probes[].properties.host"/> <prop type="integer32" name="interval" arg="$parameters.properties.probes[].properties.interval"/> <prop type="object" name="match" arg="$parameters.properties.probes[].properties.match"> <prop type="string" name="body" arg="$parameters.properties.probes[].properties.match.body"/> <prop type="array<string>" name="statusCodes" arg="$parameters.properties.probes[].properties.match.statusCodes"> <item type="string"/> </prop> </prop> <prop type="integer32" name="minServers" arg="$parameters.properties.probes[].properties.minServers"/> <prop type="string" name="path" arg="$parameters.properties.probes[].properties.path"/> <prop type="boolean" name="pickHostNameFromBackendHttpSettings" arg="$parameters.properties.probes[].properties.pickHostNameFromBackendHttpSettings"/> <prop type="boolean" name="pickHostNameFromBackendSettings" arg="$parameters.properties.probes[].properties.pickHostNameFromBackendSettings"/> <prop type="integer32" name="port" arg="$parameters.properties.probes[].properties.port"> <format maximum="65535" minimum="1"/> </prop> <prop type="string" name="protocol" arg="$parameters.properties.probes[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="integer32" name="timeout" arg="$parameters.properties.probes[].properties.timeout"/> <prop type="integer32" name="unhealthyThreshold" arg="$parameters.properties.probes[].properties.unhealthyThreshold"/> </prop> </item> </prop> <prop type="array<object>" name="redirectConfigurations" arg="$parameters.properties.redirectConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.redirectConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.redirectConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="includePath" arg="$parameters.properties.redirectConfigurations[].properties.includePath"/> <prop type="boolean" name="includeQueryString" arg="$parameters.properties.redirectConfigurations[].properties.includeQueryString"/> <prop type="array<@SubResource_create>" name="pathRules" arg="$parameters.properties.redirectConfigurations[].properties.pathRules"> <item type="@SubResource_create"/> </prop> <prop type="string" name="redirectType" arg="$parameters.properties.redirectConfigurations[].properties.redirectType"> <enum> <item value="&quot;Found&quot;"/> <item value="&quot;Permanent&quot;"/> <item value="&quot;SeeOther&quot;"/> <item value="&quot;Temporary&quot;"/> </enum> </prop> <prop type="array<@SubResource_create>" name="requestRoutingRules" arg="$parameters.properties.redirectConfigurations[].properties.requestRoutingRules"> <item type="@SubResource_create"/> </prop> <prop type="@SubResource_create" name="targetListener" arg="$parameters.properties.redirectConfigurations[].properties.targetListener"/> <prop type="string" name="targetUrl" arg="$parameters.properties.redirectConfigurations[].properties.targetUrl"/> <prop type="array<@SubResource_create>" name="urlPathMaps" arg="$parameters.properties.redirectConfigurations[].properties.urlPathMaps"> <item type="@SubResource_create"/> </prop> </prop> </item> </prop> <prop type="array<object>" name="requestRoutingRules" arg="$parameters.properties.requestRoutingRules"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.requestRoutingRules[].id"/> <prop type="string" name="name" arg="$parameters.properties.requestRoutingRules[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_create" name="backendAddressPool" arg="$parameters.properties.requestRoutingRules[].properties.backendAddressPool"/> <prop type="@SubResource_create" name="backendHttpSettings" arg="$parameters.properties.requestRoutingRules[].properties.backendHttpSettings"/> <prop type="@SubResource_create" name="httpListener" arg="$parameters.properties.requestRoutingRules[].properties.httpListener"/> <prop type="@SubResource_create" name="loadDistributionPolicy" arg="$parameters.properties.requestRoutingRules[].properties.loadDistributionPolicy"/> <prop type="integer32" name="priority" arg="$parameters.properties.requestRoutingRules[].properties.priority"> <format maximum="20000" minimum="1"/> </prop> <prop type="@SubResource_create" name="redirectConfiguration" arg="$parameters.properties.requestRoutingRules[].properties.redirectConfiguration"/> <prop type="@SubResource_create" name="rewriteRuleSet" arg="$parameters.properties.requestRoutingRules[].properties.rewriteRuleSet"/> <prop type="string" name="ruleType" arg="$parameters.properties.requestRoutingRules[].properties.ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> <prop type="@SubResource_create" name="urlPathMap" arg="$parameters.properties.requestRoutingRules[].properties.urlPathMap"/> </prop> </item> </prop> <prop type="array<object>" name="rewriteRuleSets" arg="$parameters.properties.rewriteRuleSets"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.rewriteRuleSets[].id"/> <prop type="string" name="name" arg="$parameters.properties.rewriteRuleSets[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="rewriteRules" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules"> <item type="object"> <prop type="object" name="actionSet" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet"> <prop type="array<object>" name="requestHeaderConfigurations" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.requestHeaderConfigurations"> <item type="object" cls="ApplicationGatewayHeaderConfiguration_create"> <prop type="string" name="headerName" arg="@ApplicationGatewayHeaderConfiguration_create.headerName"/> <prop type="string" name="headerValue" arg="@ApplicationGatewayHeaderConfiguration_create.headerValue"/> </item> </prop> <prop type="array<@ApplicationGatewayHeaderConfiguration_create>" name="responseHeaderConfigurations" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.responseHeaderConfigurations"> <item type="@ApplicationGatewayHeaderConfiguration_create"/> </prop> <prop type="object" name="urlConfiguration" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration"> <prop type="string" name="modifiedPath" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedPath"/> <prop type="string" name="modifiedQueryString" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedQueryString"/> <prop type="boolean" name="reroute" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.reroute"/> </prop> </prop> <prop type="array<object>" name="conditions" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions"> <item type="object"> <prop type="boolean" name="ignoreCase" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].ignoreCase"/> <prop type="boolean" name="negate" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].negate"/> <prop type="string" name="pattern" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].pattern"/> <prop type="string" name="variable" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].variable"/> </item> </prop> <prop type="string" name="name" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].name"/> <prop type="integer" name="ruleSequence" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].ruleSequence"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="routingRules" arg="$parameters.properties.routingRules"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.routingRules[].id"/> <prop type="string" name="name" arg="$parameters.properties.routingRules[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_create" name="backendAddressPool" arg="$parameters.properties.routingRules[].properties.backendAddressPool"/> <prop type="@SubResource_create" name="backendSettings" arg="$parameters.properties.routingRules[].properties.backendSettings"/> <prop type="@SubResource_create" name="listener" arg="$parameters.properties.routingRules[].properties.listener"/> <prop type="integer32" name="priority" arg="$parameters.properties.routingRules[].properties.priority" required="True"> <format maximum="20000" minimum="1"/> </prop> <prop type="string" name="ruleType" arg="$parameters.properties.routingRules[].properties.ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> </prop> </item> </prop> <prop type="object" name="sku" arg="$parameters.properties.sku"> <prop type="integer32" name="capacity" arg="$parameters.properties.sku.capacity"/> <prop type="string" name="name" arg="$parameters.properties.sku.name"> <enum> <item value="&quot;Standard_Large&quot;"/> <item value="&quot;Standard_Medium&quot;"/> <item value="&quot;Standard_Small&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF_Large&quot;"/> <item value="&quot;WAF_Medium&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> <prop type="string" name="tier" arg="$parameters.properties.sku.tier"> <enum> <item value="&quot;Standard&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslCertificates" arg="$parameters.properties.sslCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.sslCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.sslCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.sslCertificates[].properties.data"/> <prop type="string" name="keyVaultSecretId" arg="$parameters.properties.sslCertificates[].properties.keyVaultSecretId"/> <prop type="string" name="password" arg="$parameters.properties.sslCertificates[].properties.password"/> </prop> </item> </prop> <prop type="object" name="sslPolicy" arg="$parameters.properties.sslPolicy" cls="ApplicationGatewaySslPolicy_create"> <prop type="array<string>" name="cipherSuites" arg="@ApplicationGatewaySslPolicy_create.cipherSuites"> <item type="string"> <enum> <item value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </prop> <prop type="array<string>" name="disabledSslProtocols" arg="@ApplicationGatewaySslPolicy_create.disabledSslProtocols"> <item type="string"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </item> </prop> <prop type="string" name="minProtocolVersion" arg="@ApplicationGatewaySslPolicy_create.minProtocolVersion"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </prop> <prop type="string" name="policyName" arg="@ApplicationGatewaySslPolicy_create.policyName"> <enum> <item value="&quot;AppGwSslPolicy20150501&quot;"/> <item value="&quot;AppGwSslPolicy20170401&quot;"/> <item value="&quot;AppGwSslPolicy20170401S&quot;"/> <item value="&quot;AppGwSslPolicy20220101&quot;"/> <item value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </prop> <prop type="string" name="policyType" arg="@ApplicationGatewaySslPolicy_create.policyType"> <enum> <item value="&quot;Custom&quot;"/> <item value="&quot;CustomV2&quot;"/> <item value="&quot;Predefined&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslProfiles" arg="$parameters.properties.sslProfiles"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.sslProfiles[].id"/> <prop type="string" name="name" arg="$parameters.properties.sslProfiles[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="clientAuthConfiguration" arg="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration"> <prop type="boolean" name="verifyClientCertIssuerDN" arg="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration.verifyClientCertIssuerDN"/> </prop> <prop type="@ApplicationGatewaySslPolicy_create" name="sslPolicy" arg="$parameters.properties.sslProfiles[].properties.sslPolicy"/> <prop type="array<@SubResource_create>" name="trustedClientCertificates" arg="$parameters.properties.sslProfiles[].properties.trustedClientCertificates"> <item type="@SubResource_create"/> </prop> </prop> </item> </prop> <prop type="array<object>" name="trustedClientCertificates" arg="$parameters.properties.trustedClientCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.trustedClientCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.trustedClientCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.trustedClientCertificates[].properties.data"/> </prop> </item> </prop> <prop type="array<object>" name="trustedRootCertificates" arg="$parameters.properties.trustedRootCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.trustedRootCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.trustedRootCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.trustedRootCertificates[].properties.data"/> <prop type="string" name="keyVaultSecretId" arg="$parameters.properties.trustedRootCertificates[].properties.keyVaultSecretId"/> </prop> </item> </prop> <prop type="array<object>" name="urlPathMaps" arg="$parameters.properties.urlPathMaps"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.urlPathMaps[].id"/> <prop type="string" name="name" arg="$parameters.properties.urlPathMaps[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_create" name="defaultBackendAddressPool" arg="$parameters.properties.urlPathMaps[].properties.defaultBackendAddressPool"/> <prop type="@SubResource_create" name="defaultBackendHttpSettings" arg="$parameters.properties.urlPathMaps[].properties.defaultBackendHttpSettings"/> <prop type="@SubResource_create" name="defaultLoadDistributionPolicy" arg="$parameters.properties.urlPathMaps[].properties.defaultLoadDistributionPolicy"/> <prop type="@SubResource_create" name="defaultRedirectConfiguration" arg="$parameters.properties.urlPathMaps[].properties.defaultRedirectConfiguration"/> <prop type="@SubResource_create" name="defaultRewriteRuleSet" arg="$parameters.properties.urlPathMaps[].properties.defaultRewriteRuleSet"/> <prop type="array<object>" name="pathRules" arg="$parameters.properties.urlPathMaps[].properties.pathRules"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].id"/> <prop type="string" name="name" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_create" name="backendAddressPool" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendAddressPool"/> <prop type="@SubResource_create" name="backendHttpSettings" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendHttpSettings"/> <prop type="@SubResource_create" name="firewallPolicy" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.firewallPolicy"/> <prop type="@SubResource_create" name="loadDistributionPolicy" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.loadDistributionPolicy"/> <prop type="array<string>" name="paths" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.paths"> <item type="string"/> </prop> <prop type="@SubResource_create" name="redirectConfiguration" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.redirectConfiguration"/> <prop type="@SubResource_create" name="rewriteRuleSet" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.rewriteRuleSet"/> </prop> </item> </prop> </prop> </item> </prop> <prop type="object" name="webApplicationFirewallConfiguration" arg="$parameters.properties.webApplicationFirewallConfiguration"> <prop type="array<object>" name="disabledRuleGroups" arg="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups"> <item type="object"> <prop type="string" name="ruleGroupName" arg="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].ruleGroupName" required="True"/> <prop type="array<integer32>" name="rules" arg="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].rules"> <item type="integer32"/> </prop> </item> </prop> <prop type="boolean" name="enabled" arg="$parameters.properties.webApplicationFirewallConfiguration.enabled" required="True"/> <prop type="array<object>" name="exclusions" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions"> <item type="object"> <prop type="string" name="matchVariable" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].matchVariable" required="True"/> <prop type="string" name="selector" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selector" required="True"/> <prop type="string" name="selectorMatchOperator" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selectorMatchOperator" required="True"/> </item> </prop> <prop type="integer32" name="fileUploadLimitInMb" arg="$parameters.properties.webApplicationFirewallConfiguration.fileUploadLimitInMb"> <format minimum="0"/> </prop> <prop type="string" name="firewallMode" arg="$parameters.properties.webApplicationFirewallConfiguration.firewallMode" required="True"> <enum> <item value="&quot;Detection&quot;"/> <item value="&quot;Prevention&quot;"/> </enum> </prop> <prop type="integer32" name="maxRequestBodySize" arg="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySize"> <format maximum="128" minimum="8"/> </prop> <prop type="integer32" name="maxRequestBodySizeInKb" arg="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySizeInKb"> <format maximum="128" minimum="8"/> </prop> <prop type="boolean" name="requestBodyCheck" arg="$parameters.properties.webApplicationFirewallConfiguration.requestBodyCheck"/> <prop type="string" name="ruleSetType" arg="$parameters.properties.webApplicationFirewallConfiguration.ruleSetType" required="True"/> <prop type="string" name="ruleSetVersion" arg="$parameters.properties.webApplicationFirewallConfiguration.ruleSetVersion" required="True"/> </prop> </prop> <prop type="object" name="tags" arg="$parameters.tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop type="array<string>" name="zones" arg="$parameters.zones"> <item type="string"/> </prop> </schema> </json> </body> </request> <response statusCode="200 201"> <body> <json var="$Instance"> <schema type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </prop> <prop type="IdentityObject" name="identity"> <prop readOnly="True" type="string" name="principalId"/> <prop readOnly="True" type="string" name="tenantId"/> <prop type="string" name="type"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;SystemAssigned&quot;"/> <item value="&quot;SystemAssigned, UserAssigned&quot;"/> <item value="&quot;UserAssigned&quot;"/> </enum> </prop> <prop type="object" name="userAssignedIdentities"> <additionalProp> <item type="object"> <prop readOnly="True" type="string" name="clientId"/> <prop readOnly="True" type="string" name="principalId"/> </item> </additionalProp> </prop> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="authenticationCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="autoscaleConfiguration"> <prop type="integer32" name="maxCapacity"> <format minimum="2"/> </prop> <prop type="integer32" name="minCapacity" required="True"> <format minimum="0"/> </prop> </prop> <prop type="array<object>" name="backendAddressPools"> <item type="object" cls="ApplicationGatewayBackendAddressPool_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="backendAddresses"> <item type="object"> <prop type="string" name="fqdn"/> <prop type="string" name="ipAddress"/> </item> </prop> <prop readOnly="True" type="array<object>" name="backendIPConfigurations"> <item type="object" cls="NetworkInterfaceIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}/ipConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<@ApplicationGatewayBackendAddressPool_read>" name="applicationGatewayBackendAddressPools"> <item type="@ApplicationGatewayBackendAddressPool_read"/> </prop> <prop type="array<@ApplicationSecurityGroup_read>" name="applicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="@SubResource_read" name="gatewayLoadBalancer"/> <prop type="array<object>" name="loadBalancerBackendAddressPools"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/backendAddressPools/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<@NetworkInterfaceIPConfiguration_read>" name="backendIPConfigurations"> <item type="@NetworkInterfaceIPConfiguration_read"/> </prop> <prop type="integer32" name="drainPeriodInSeconds"/> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatRules"> <item type="@SubResource_read"/> </prop> <prop type="array<object>" name="loadBalancerBackendAddresses"> <item type="object"> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="adminState"> <enum> <item value="&quot;Down&quot;"/> <item value="&quot;Drain&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Up&quot;"/> </enum> </prop> <prop readOnly="True" type="array<object>" name="inboundNatRulesPortMapping"> <item type="object"> <prop type="integer32" name="backendPort"/> <prop type="integer32" name="frontendPort"/> <prop type="string" name="inboundNatRuleName"/> </item> </prop> <prop type="string" name="ipAddress"/> <prop type="@SubResource_read" name="loadBalancerFrontendIPConfiguration"/> <prop readOnly="True" type="@SubResource_read" name="networkInterfaceIPConfiguration"/> <prop type="@SubResource_read" name="subnet"/> <prop type="@SubResource_read" name="virtualNetwork"/> </prop> </item> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="loadBalancingRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="location"/> <prop readOnly="True" type="@SubResource_read" name="outboundRule"/> <prop readOnly="True" type="array<@SubResource_read>" name="outboundRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="tunnelInterfaces"> <item type="object"> <prop type="integer32" name="identifier"/> <prop type="integer32" name="port"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Native&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VXLAN&quot;"/> </enum> </prop> <prop type="string" name="type"> <enum> <item value="&quot;External&quot;"/> <item value="&quot;Internal&quot;"/> <item value="&quot;None&quot;"/> </enum> </prop> </item> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="loadBalancerInboundNatRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/inboundNatRules/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop readOnly="True" type="@NetworkInterfaceIPConfiguration_read" name="backendIPConfiguration"/> <prop type="integer32" name="backendPort"/> <prop type="boolean" name="enableFloatingIP"/> <prop type="boolean" name="enableTcpReset"/> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="integer32" name="frontendPort"/> <prop type="integer32" name="frontendPortRangeEnd"/> <prop type="integer32" name="frontendPortRangeStart"/> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop type="string" name="protocol"> <enum> <item value="&quot;All&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="object" name="privateLinkConnectionProperties"> <prop readOnly="True" type="array<string>" name="fqdns"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="groupId"/> <prop readOnly="True" type="string" name="requiredMemberName"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@PublicIPAddress_read" name="publicIPAddress"/> <prop type="@Subnet_read" name="subnet"/> <prop type="array<object>" name="virtualNetworkTaps"> <item type="object" cls="VirtualNetworkTap_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkTaps/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="destinationLoadBalancerFrontEndIPConfiguration" cls="FrontendIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/frontendIPConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="gatewayLoadBalancer"/> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatPools"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="loadBalancingRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="outboundRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@PublicIPAddress_read" name="publicIPAddress"/> <prop type="@SubResource_read" name="publicIPPrefix"/> <prop type="object" name="subnet" cls="Subnet_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworks/{}/subnets/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="addressPrefix"/> <prop type="array<string>" name="addressPrefixes"> <item type="string"/> </prop> <prop type="array<@ApplicationGatewayIPConfiguration_read>" name="applicationGatewayIpConfigurations"> <item type="@ApplicationGatewayIPConfiguration_read"/> </prop> <prop type="array<object>" name="delegations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<string>" name="actions"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="serviceName"/> </prop> <prop type="string" name="type"/> </item> </prop> <prop type="array<@SubResource_read>" name="ipAllocations"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<object>" name="ipConfigurationProfiles"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<object>" name="ipConfigurations"> <item type="object" cls="IPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <default value="&quot;Dynamic&quot;"/> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="publicIPAddress" cls="PublicIPAddress_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/publicIPAddresses/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="ddosSettings"> <prop type="@SubResource_read" name="ddosCustomPolicy"/> <prop type="boolean" name="protectedIP"/> <prop type="string" name="protectionCoverage"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> </prop> <prop type="string" name="deleteOption"> <enum> <item value="&quot;Delete&quot;"/> <item value="&quot;Detach&quot;"/> </enum> </prop> <prop type="object" name="dnsSettings"> <prop type="string" name="domainNameLabel"/> <prop type="string" name="fqdn"/> <prop type="string" name="reverseFqdn"/> </prop> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop type="string" name="ipAddress"/> <prop readOnly="True" type="@IPConfiguration_read" name="ipConfiguration"/> <prop type="array<object>" name="ipTags"> <item type="object"> <prop type="string" name="ipTagType"/> <prop type="string" name="tag"/> </item> </prop> <prop type="@PublicIPAddress_read" name="linkedPublicIPAddress"/> <prop type="string" name="migrationPhase"> <enum> <item value="&quot;Abort&quot;"/> <item value="&quot;Commit&quot;"/> <item value="&quot;Committed&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Prepare&quot;"/> </enum> </prop> <prop type="object" name="natGateway"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/natGateways/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<@SubResource_read>" name="publicIpAddresses"> <item type="@SubResource_read"/> </prop> <prop type="array<@SubResource_read>" name="publicIpPrefixes"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop readOnly="True" type="array<@SubResource_read>" name="subnets"> <item type="@SubResource_read"/> </prop> </prop> <prop type="object" name="sku"> <prop type="string" name="name"> <enum> <item value="&quot;Standard&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="publicIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="publicIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="publicIPPrefix"/> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="@PublicIPAddress_read" name="servicePublicIPAddress"/> </prop> <prop type="object" name="sku"> <prop type="string" name="name"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> <prop type="string" name="tier"> <enum> <item value="&quot;Global&quot;"/> <item value="&quot;Regional&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> </item> </prop> <prop type="@SubResource_read" name="natGateway"/> <prop type="object" name="networkSecurityGroup" cls="NetworkSecurityGroup_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkSecurityGroups/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<@SecurityRule_read>" name="defaultSecurityRules"> <item type="@SecurityRule_read"/> </prop> <prop readOnly="True" type="array<object>" name="flowLogs"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkWatchers/{}/flowLogs/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="enabled"/> <prop type="object" name="flowAnalyticsConfiguration"> <prop type="object" name="networkWatcherFlowAnalyticsConfiguration"> <prop type="boolean" name="enabled"/> <prop type="integer32" name="trafficAnalyticsInterval"/> <prop type="string" name="workspaceId"/> <prop type="string" name="workspaceRegion"/> <prop type="string" name="workspaceResourceId"/> </prop> </prop> <prop type="object" name="format"> <prop type="string" name="type"> <enum> <item value="&quot;JSON&quot;"/> </enum> </prop> <prop type="integer32" name="version"> <default value="0"/> </prop> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="retentionPolicy"> <prop type="integer32" name="days"> <default value="0"/> </prop> <prop type="boolean" name="enabled"> <default value="false"/> </prop> </prop> <prop type="string" name="storageId" required="True"/> <prop readOnly="True" type="string" name="targetResourceGuid"/> <prop type="string" name="targetResourceId" required="True"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="boolean" name="flushConnection"/> <prop readOnly="True" type="array<object>" name="networkInterfaces"> <item type="object" cls="NetworkInterface_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="object" name="extendedLocation" cls="ExtendedLocation_read"> <prop type="string" name="name"/> <prop type="string" name="type"> <enum> <item value="&quot;EdgeZone&quot;"/> </enum> </prop> </prop> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="auxiliaryMode"> <enum> <item value="&quot;Floating&quot;"/> <item value="&quot;MaxConnections&quot;"/> <item value="&quot;None&quot;"/> </enum> </prop> <prop type="object" name="dnsSettings"> <prop readOnly="True" type="array<string>" name="appliedDnsServers"> <item type="string"/> </prop> <prop type="array<string>" name="dnsServers"> <item type="string"/> </prop> <prop type="string" name="internalDnsNameLabel"/> <prop readOnly="True" type="string" name="internalDomainNameSuffix"/> <prop readOnly="True" type="string" name="internalFqdn"/> </prop> <prop readOnly="True" type="@SubResource_read" name="dscpConfiguration"/> <prop type="boolean" name="enableAcceleratedNetworking"/> <prop type="boolean" name="enableIPForwarding"/> <prop readOnly="True" type="array<string>" name="hostedWorkloads"> <item type="string"/> </prop> <prop type="array<@NetworkInterfaceIPConfiguration_read>" name="ipConfigurations"> <item type="@NetworkInterfaceIPConfiguration_read"/> </prop> <prop readOnly="True" type="string" name="macAddress"/> <prop type="string" name="migrationPhase"> <enum> <item value="&quot;Abort&quot;"/> <item value="&quot;Commit&quot;"/> <item value="&quot;Committed&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Prepare&quot;"/> </enum> </prop> <prop type="@NetworkSecurityGroup_read" name="networkSecurityGroup"/> <prop type="string" name="nicType"> <enum> <item value="&quot;Elastic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> <prop readOnly="True" type="boolean" name="primary"/> <prop type="object" name="privateEndpoint" cls="PrivateEndpoint_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateEndpoints/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<@ApplicationSecurityGroup_read>" name="applicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="array<object>" name="customDnsConfigs"> <item type="object"> <prop type="string" name="fqdn"/> <prop type="array<string>" name="ipAddresses"> <item type="string"/> </prop> </item> </prop> <prop type="string" name="customNetworkInterfaceName"/> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="groupId"/> <prop type="string" name="memberName"/> <prop type="string" name="privateIPAddress"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@PrivateLinkServiceConnection_read>" name="manualPrivateLinkServiceConnections"> <item type="@PrivateLinkServiceConnection_read"/> </prop> <prop readOnly="True" type="array<@NetworkInterface_read>" name="networkInterfaces"> <item type="@NetworkInterface_read"/> </prop> <prop type="array<object>" name="privateLinkServiceConnections"> <item type="object" cls="PrivateLinkServiceConnection_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<string>" name="groupIds"> <item type="string"/> </prop> <prop type="object" name="privateLinkServiceConnectionState" cls="PrivateLinkServiceConnectionState_read"> <prop type="string" name="actionsRequired"/> <prop type="string" name="description"/> <prop type="string" name="status"/> </prop> <prop type="string" name="privateLinkServiceId"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="requestMessage"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="object" name="privateLinkService"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateLinkServices/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="alias"/> <prop type="object" name="autoApproval"> <prop type="array<string>" name="subscriptions"> <item type="string"/> </prop> </prop> <prop type="boolean" name="enableProxyProtocol"/> <prop type="array<string>" name="fqdns"> <item type="string"/> </prop> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@FrontendIPConfiguration_read>" name="loadBalancerFrontendIpConfigurations"> <item type="@FrontendIPConfiguration_read"/> </prop> <prop readOnly="True" type="array<@NetworkInterface_read>" name="networkInterfaces"> <item type="@NetworkInterface_read"/> </prop> <prop readOnly="True" type="array<object>" name="privateEndpointConnections"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateLinkServices/{}/privateEndpointConnections/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="linkIdentifier"/> <prop readOnly="True" type="@PrivateEndpoint_read" name="privateEndpoint"/> <prop type="@PrivateLinkServiceConnectionState_read" name="privateLinkServiceConnectionState"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="visibility"> <prop type="array<string>" name="subscriptions"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop readOnly="True" type="array<@NetworkInterfaceTapConfiguration_read>" name="tapConfigurations"> <item type="@NetworkInterfaceTapConfiguration_read"/> </prop> <prop readOnly="True" type="@SubResource_read" name="virtualMachine"/> <prop readOnly="True" type="boolean" name="vnetEncryptionSupported"/> <prop type="string" name="workloadType"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="securityRules"> <item type="object" cls="SecurityRule_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="access" required="True"> <enum> <item value="&quot;Allow&quot;"/> <item value="&quot;Deny&quot;"/> </enum> </prop> <prop type="string" name="description"/> <prop type="string" name="destinationAddressPrefix"/> <prop type="array<string>" name="destinationAddressPrefixes"> <item type="string"/> </prop> <prop type="array<@ApplicationSecurityGroup_read>" name="destinationApplicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="string" name="destinationPortRange"/> <prop type="array<string>" name="destinationPortRanges"> <item type="string"/> </prop> <prop type="string" name="direction" required="True"> <enum> <item value="&quot;Inbound&quot;"/> <item value="&quot;Outbound&quot;"/> </enum> </prop> <prop type="integer32" name="priority"/> <prop type="string" name="protocol" required="True"> <enum> <item value="&quot;*&quot;"/> <item value="&quot;Ah&quot;"/> <item value="&quot;Esp&quot;"/> <item value="&quot;Icmp&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="sourceAddressPrefix"/> <prop type="array<string>" name="sourceAddressPrefixes"> <item type="string"/> </prop> <prop type="array<object>" name="sourceApplicationSecurityGroups"> <item type="object" cls="ApplicationSecurityGroup_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationSecurityGroups/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="string" name="sourcePortRange"/> <prop type="array<string>" name="sourcePortRanges"> <item type="string"/> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="string" name="privateEndpointNetworkPolicies"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop readOnly="True" type="array<@PrivateEndpoint_read>" name="privateEndpoints"> <item type="@PrivateEndpoint_read"/> </prop> <prop type="string" name="privateLinkServiceNetworkPolicies"> <default value="&quot;Enabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="purpose"/> <prop readOnly="True" type="array<object>" name="resourceNavigationLinks"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop readOnly="True" type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="link"/> <prop type="string" name="linkedResourceType"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="routeTable"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/routeTables/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="disableBgpRoutePropagation"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="routes"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/routeTables/{}/routes/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="addressPrefix"/> <prop type="boolean" name="hasBgpOverride"/> <prop type="string" name="nextHopIpAddress"/> <prop type="string" name="nextHopType" required="True"> <enum> <item value="&quot;Internet&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VirtualAppliance&quot;"/> <item value="&quot;VirtualNetworkGateway&quot;"/> <item value="&quot;VnetLocal&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="array<object>" name="serviceAssociationLinks"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="allowDelete"/> <prop type="string" name="link"/> <prop type="string" name="linkedResourceType"/> <prop type="array<string>" name="locations"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="serviceEndpointPolicies"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/serviceEndpointPolicies/{}"/> </prop> <prop readOnly="True" type="string" name="kind"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<string>" name="contextualServiceEndpointPolicies"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="string" name="serviceAlias"/> <prop type="array<object>" name="serviceEndpointPolicyDefinitions"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/serviceEndpointPolicies/{}/serviceEndpointPolicyDefinitions/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="description"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="service"/> <prop type="array<string>" name="serviceResources"> <item type="string"/> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="serviceEndpoints"> <item type="object"> <prop type="array<string>" name="locations"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="service"/> </item> </prop> </prop> <prop type="string" name="type"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop type="@NetworkInterfaceIPConfiguration_read" name="destinationNetworkInterfaceIPConfiguration"/> <prop type="integer" name="destinationPort"/> <prop readOnly="True" type="array<object>" name="networkInterfaceTapConfigurations"> <item type="object" cls="NetworkInterfaceTapConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}/tapConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@VirtualNetworkTap_read" name="virtualNetworkTap"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="backendHttpSettingsCollection"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="affinityCookieName"/> <prop type="array<@SubResource_read>" name="authenticationCertificates"> <item type="@SubResource_read"/> </prop> <prop type="object" name="connectionDraining"> <prop type="integer32" name="drainTimeoutInSec" required="True"> <format maximum="3600" minimum="1"/> </prop> <prop type="boolean" name="enabled" required="True"/> </prop> <prop type="string" name="cookieBasedAffinity"> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="hostName"/> <prop type="string" name="path"/> <prop type="boolean" name="pickHostNameFromBackendAddress"/> <prop type="integer32" name="port"/> <prop type="@SubResource_read" name="probe"/> <prop type="boolean" name="probeEnabled"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="requestTimeout"/> <prop type="array<@SubResource_read>" name="trustedRootCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="backendSettingsCollection"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="hostName"/> <prop type="boolean" name="pickHostNameFromBackendAddress"/> <prop type="integer32" name="port"/> <prop type="@SubResource_read" name="probe"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="timeout"/> <prop type="array<@SubResource_read>" name="trustedRootCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@ApplicationGatewayCustomError_read>" name="customErrorConfigurations"> <item type="@ApplicationGatewayCustomError_read"/> </prop> <prop type="boolean" name="enableFips"/> <prop type="boolean" name="enableHttp2"/> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="boolean" name="forceFirewallPolicyAssociation"/> <prop type="array<object>" name="frontendIPConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="privateLinkConfiguration"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="publicIPAddress"/> <prop type="@SubResource_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="frontendPorts"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="port"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="gatewayIPConfigurations"> <item type="object" cls="ApplicationGatewayIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="subnet" cls="SubResource_read"> <prop type="string" name="id"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="globalConfiguration"> <prop type="boolean" name="enableRequestBuffering"/> <prop type="boolean" name="enableResponseBuffering"/> </prop> <prop type="array<object>" name="httpListeners"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="customErrorConfigurations"> <item type="object" cls="ApplicationGatewayCustomError_read"> <prop type="string" name="customErrorPageUrl"/> <prop type="string" name="statusCode"> <enum> <item value="&quot;HttpStatus403&quot;"/> <item value="&quot;HttpStatus502&quot;"/> </enum> </prop> </item> </prop> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="@SubResource_read" name="frontendPort"/> <prop type="string" name="hostName"/> <prop type="array<string>" name="hostNames"> <item type="string"/> </prop> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="boolean" name="requireServerNameIndication"/> <prop type="@SubResource_read" name="sslCertificate"/> <prop type="@SubResource_read" name="sslProfile"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="listeners"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="@SubResource_read" name="frontendPort"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="sslCertificate"/> <prop type="@SubResource_read" name="sslProfile"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="loadDistributionPolicies"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="loadDistributionAlgorithm"> <enum> <item value="&quot;IpHash&quot;"/> <item value="&quot;LeastConnections&quot;"/> <item value="&quot;RoundRobin&quot;"/> </enum> </prop> <prop type="array<object>" name="loadDistributionTargets"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="integer32" name="weightPerServer"> <format maximum="100" minimum="1"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="operationalState"> <enum> <item value="&quot;Running&quot;"/> <item value="&quot;Starting&quot;"/> <item value="&quot;Stopped&quot;"/> <item value="&quot;Stopping&quot;"/> </enum> </prop> <prop readOnly="True" type="array<object>" name="privateEndpointConnections"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}/privateEndpointConnections/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="linkIdentifier"/> <prop readOnly="True" type="@PrivateEndpoint_read" name="privateEndpoint"/> <prop type="@PrivateLinkServiceConnectionState_read" name="privateLinkServiceConnectionState"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="privateLinkConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="probes"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="host"/> <prop type="integer32" name="interval"/> <prop type="object" name="match"> <prop type="string" name="body"/> <prop type="array<string>" name="statusCodes"> <item type="string"/> </prop> </prop> <prop type="integer32" name="minServers"/> <prop type="string" name="path"/> <prop type="boolean" name="pickHostNameFromBackendHttpSettings"/> <prop type="boolean" name="pickHostNameFromBackendSettings"/> <prop type="integer32" name="port"> <format maximum="65535" minimum="1"/> </prop> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="timeout"/> <prop type="integer32" name="unhealthyThreshold"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="redirectConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="includePath"/> <prop type="boolean" name="includeQueryString"/> <prop type="array<@SubResource_read>" name="pathRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="redirectType"> <enum> <item value="&quot;Found&quot;"/> <item value="&quot;Permanent&quot;"/> <item value="&quot;SeeOther&quot;"/> <item value="&quot;Temporary&quot;"/> </enum> </prop> <prop type="array<@SubResource_read>" name="requestRoutingRules"> <item type="@SubResource_read"/> </prop> <prop type="@SubResource_read" name="targetListener"/> <prop type="string" name="targetUrl"/> <prop type="array<@SubResource_read>" name="urlPathMaps"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="requestRoutingRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendHttpSettings"/> <prop type="@SubResource_read" name="httpListener"/> <prop type="@SubResource_read" name="loadDistributionPolicy"/> <prop type="integer32" name="priority"> <format maximum="20000" minimum="1"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="redirectConfiguration"/> <prop type="@SubResource_read" name="rewriteRuleSet"/> <prop type="string" name="ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="urlPathMap"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="rewriteRuleSets"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="rewriteRules"> <item type="object"> <prop type="object" name="actionSet"> <prop type="array<object>" name="requestHeaderConfigurations"> <item type="object" cls="ApplicationGatewayHeaderConfiguration_read"> <prop type="string" name="headerName"/> <prop type="string" name="headerValue"/> </item> </prop> <prop type="array<@ApplicationGatewayHeaderConfiguration_read>" name="responseHeaderConfigurations"> <item type="@ApplicationGatewayHeaderConfiguration_read"/> </prop> <prop type="object" name="urlConfiguration"> <prop type="string" name="modifiedPath"/> <prop type="string" name="modifiedQueryString"/> <prop type="boolean" name="reroute"/> </prop> </prop> <prop type="array<object>" name="conditions"> <item type="object"> <prop type="boolean" name="ignoreCase"/> <prop type="boolean" name="negate"/> <prop type="string" name="pattern"/> <prop type="string" name="variable"/> </item> </prop> <prop type="string" name="name"/> <prop type="integer" name="ruleSequence"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="routingRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendSettings"/> <prop type="@SubResource_read" name="listener"/> <prop type="integer32" name="priority" required="True"> <format maximum="20000" minimum="1"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="sku"> <prop type="integer32" name="capacity"/> <prop type="string" name="name"> <enum> <item value="&quot;Standard_Large&quot;"/> <item value="&quot;Standard_Medium&quot;"/> <item value="&quot;Standard_Small&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF_Large&quot;"/> <item value="&quot;WAF_Medium&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> <prop type="string" name="tier"> <enum> <item value="&quot;Standard&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop type="string" name="keyVaultSecretId"/> <prop type="string" name="password"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="publicCertData"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="sslPolicy" cls="ApplicationGatewaySslPolicy_read"> <prop type="array<string>" name="cipherSuites"> <item type="string"> <enum> <item value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </prop> <prop type="array<string>" name="disabledSslProtocols"> <item type="string"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </item> </prop> <prop type="string" name="minProtocolVersion"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </prop> <prop type="string" name="policyName"> <enum> <item value="&quot;AppGwSslPolicy20150501&quot;"/> <item value="&quot;AppGwSslPolicy20170401&quot;"/> <item value="&quot;AppGwSslPolicy20170401S&quot;"/> <item value="&quot;AppGwSslPolicy20220101&quot;"/> <item value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </prop> <prop type="string" name="policyType"> <enum> <item value="&quot;Custom&quot;"/> <item value="&quot;CustomV2&quot;"/> <item value="&quot;Predefined&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslProfiles"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="clientAuthConfiguration"> <prop type="boolean" name="verifyClientCertIssuerDN"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@ApplicationGatewaySslPolicy_read" name="sslPolicy"/> <prop type="array<@SubResource_read>" name="trustedClientCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="trustedClientCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="clientCertIssuerDN"/> <prop type="string" name="data"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="validatedCertData"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="trustedRootCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop type="string" name="keyVaultSecretId"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="urlPathMaps"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="defaultBackendAddressPool"/> <prop type="@SubResource_read" name="defaultBackendHttpSettings"/> <prop type="@SubResource_read" name="defaultLoadDistributionPolicy"/> <prop type="@SubResource_read" name="defaultRedirectConfiguration"/> <prop type="@SubResource_read" name="defaultRewriteRuleSet"/> <prop type="array<object>" name="pathRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendHttpSettings"/> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="@SubResource_read" name="loadDistributionPolicy"/> <prop type="array<string>" name="paths"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="redirectConfiguration"/> <prop type="@SubResource_read" name="rewriteRuleSet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="webApplicationFirewallConfiguration"> <prop type="array<object>" name="disabledRuleGroups"> <item type="object"> <prop type="string" name="ruleGroupName" required="True"/> <prop type="array<integer32>" name="rules"> <item type="integer32"/> </prop> </item> </prop> <prop type="boolean" name="enabled" required="True"/> <prop type="array<object>" name="exclusions"> <item type="object"> <prop type="string" name="matchVariable" required="True"/> <prop type="string" name="selector" required="True"/> <prop type="string" name="selectorMatchOperator" required="True"/> </item> </prop> <prop type="integer32" name="fileUploadLimitInMb"> <format minimum="0"/> </prop> <prop type="string" name="firewallMode" required="True"> <enum> <item value="&quot;Detection&quot;"/> <item value="&quot;Prevention&quot;"/> </enum> </prop> <prop type="integer32" name="maxRequestBodySize"> <format maximum="128" minimum="8"/> </prop> <prop type="integer32" name="maxRequestBodySizeInKb"> <format maximum="128" minimum="8"/> </prop> <prop type="boolean" name="requestBodyCheck"/> <prop type="string" name="ruleSetType" required="True"/> <prop type="string" name="ruleSetVersion" required="True"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> <command name="update" version="2022-01-01" confirmation=""> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/applicationgateways/{}" version="2022-01-01" swagger="mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9hcHBsaWNhdGlvbkdhdGV3YXlzL3thcHBsaWNhdGlvbkdhdGV3YXlOYW1lfQ==/V/MjAyMi0wMS0wMQ=="/> <argGroup name=""> <arg type="string" var="$Path.applicationGatewayName" options="name n" required="True" group="" idPart="name"> <help short="Name of the application gateway."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> <arg nullable="True" type="object" var="$parameters.identity" options="identity" group=""> <help short="The identity of the application gateway, if configured."/> <arg nullable="True" type="string" var="$parameters.identity.type" options="type"> <help short="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> <item name="None" value="&quot;None&quot;"/> <item name="SystemAssigned" value="&quot;SystemAssigned&quot;"/> <item name="SystemAssigned, UserAssigned" value="&quot;SystemAssigned, UserAssigned&quot;"/> <item name="UserAssigned" value="&quot;UserAssigned&quot;"/> </enum> </arg> <arg nullable="True" type="object" var="$parameters.identity.userAssignedIdentities" options="user-assigned-identities"> <help short="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}'."/> <additionalProp> <item nullable="True" type="object"> <blank value="{}"/> </item> </additionalProp> </arg> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.autoscaleConfiguration.maxCapacity" options="max-capacity" group=""> <help short="Upper bound on the number of application gateway instances."/> <format minimum="2"/> </arg> <arg type="integer32" var="$parameters.properties.autoscaleConfiguration.minCapacity" options="min-capacity" group=""> <help short="Lower bound on the number of application gateway instances."/> <format minimum="0"/> </arg> <arg nullable="True" type="array<@ApplicationGatewayCustomError_update>" var="$parameters.properties.customErrorConfigurations" options="custom-error-configurations" group=""> <help short="Custom error configurations of the application gateway resource."/> <item nullable="True" type="@ApplicationGatewayCustomError_update"/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.enableHttp2" options="http2" group=""> <help short="Use HTTP2 for the application gateway"/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.sku.capacity" options="capacity" group=""> <help short="Number of instances to use with the application gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.sku.name" options="sku" group=""> <help short="Name of an application gateway SKU."/> <enum> <item name="Standard_Large" value="&quot;Standard_Large&quot;"/> <item name="Standard_Medium" value="&quot;Standard_Medium&quot;"/> <item name="Standard_Small" value="&quot;Standard_Small&quot;"/> <item name="Standard_v2" value="&quot;Standard_v2&quot;"/> <item name="WAF_Large" value="&quot;WAF_Large&quot;"/> <item name="WAF_Medium" value="&quot;WAF_Medium&quot;"/> <item name="WAF_v2" value="&quot;WAF_v2&quot;"/> </enum> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.sslProfiles" options="ssl-profiles" group=""> <help short="SSL profiles of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.sslProfiles[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.sslProfiles[].name" options="name"> <help short="Name of the SSL profile that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="object" var="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration" options="client-auth-configuration" group="Properties"> <help short="Client authentication configuration of the application gateway resource."/> <arg nullable="True" type="boolean" var="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration.verifyClientCertIssuerDN" options="verify-client-cert-issuer-dn"> <help short="Verify client certificate issuer name on the application gateway."/> </arg> </arg> <arg nullable="True" type="@ApplicationGatewaySslPolicy_update" var="$parameters.properties.sslProfiles[].properties.sslPolicy" options="ssl-policy" group="Properties"> <help short="SSL policy of the application gateway resource."/> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.sslProfiles[].properties.trustedClientCertificates" options="trusted-client-certificates" group="Properties"> <help short="Array of references to application gateway trusted client certificates."/> <item nullable="True" type="@SubResource_update"/> </arg> </item> </arg> <arg nullable="True" type="object" var="$parameters.tags" options="tags" group=""> <help short="Space-separated tags: key[=value] [key[=value] ...]."/> <additionalProp> <item nullable="True" type="string"/> </additionalProp> </arg> </argGroup> <argGroup name="Parameters"> <arg nullable="True" type="ResourceId" var="$parameters.id" options="id" hide="True" group="Parameters"> <help short="Resource ID."/> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </arg> <arg nullable="True" type="ResourceLocation" var="$parameters.location" options="location l" hide="True" group="Parameters"> <help short="Resource location."/> </arg> <arg nullable="True" type="array<string>" var="$parameters.zones" options="zones" hide="True" group="Parameters"> <help short="A list of availability zones denoting where the resource needs to come from."/> <item nullable="True" type="string"/> </arg> </argGroup> <argGroup name="Properties"> <arg nullable="True" type="array<object>" var="$parameters.properties.authenticationCertificates" options="authentication-certificates" hide="True" group="Properties"> <help short="Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.authenticationCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.authenticationCertificates[].name" options="name"> <help short="Name of the authentication certificate that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.authenticationCertificates[].properties.data" options="data" group="Properties"> <help short="Certificate public data."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.backendAddressPools" options="backend-address-pools" hide="True" group="Properties"> <help short="Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.backendAddressPools[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendAddressPools[].name" options="name"> <help short="Name of the backend address pool that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.backendAddressPools[].properties.backendAddresses" options="backend-addresses" group="Properties"> <help short="Backend addresses."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.backendAddressPools[].properties.backendAddresses[].fqdn" options="fqdn"> <help short="Fully qualified domain name (FQDN)."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendAddressPools[].properties.backendAddresses[].ipAddress" options="ip-address"> <help short="IP address."/> </arg> </item> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.backendHttpSettingsCollection" options="backend-http-settings-collection" hide="True" group="Properties"> <help short="Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].name" options="name"> <help short="Name of the backend http settings that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.affinityCookieName" options="affinity-cookie-name" group="Properties"> <help short="Cookie name to use for the affinity cookie."/> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.backendHttpSettingsCollection[].properties.authenticationCertificates" options="authentication-certificates" group="Properties"> <help short="Array of references to application gateway authentication certificates."/> <item nullable="True" type="@SubResource_update"/> </arg> <arg nullable="True" type="object" var="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining" options="connection-draining" group="Properties"> <help short="Connection draining of the backend http settings resource."/> <arg type="integer32" var="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.drainTimeoutInSec" options="drain-timeout-in-sec"> <help short="The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds."/> <format maximum="3600" minimum="1"/> </arg> <arg type="boolean" var="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.enabled" options="enabled"> <help short="Whether connection draining is enabled or not."/> </arg> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.cookieBasedAffinity" options="cookie-based-affinity" group="Properties"> <help short="Cookie based affinity."/> <enum> <item name="Disabled" value="&quot;Disabled&quot;"/> <item name="Enabled" value="&quot;Enabled&quot;"/> </enum> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.hostName" options="host-name" group="Properties"> <help short="Host header to be sent to the backend servers."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.path" options="path" group="Properties"> <help short="Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.backendHttpSettingsCollection[].properties.pickHostNameFromBackendAddress" options="pick-host-name-from-backend-address" group="Properties"> <help short="Whether to pick host header should be picked from the host name of the backend server. Default value is false."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.backendHttpSettingsCollection[].properties.port" options="port" group="Properties"> <help short="The destination port on the backend."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.backendHttpSettingsCollection[].properties.probe" options="probe" group="Properties"> <help short="Probe resource of an application gateway."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.backendHttpSettingsCollection[].properties.probeEnabled" options="probe-enabled" group="Properties"> <help short="Whether the probe is enabled. Default value is false."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendHttpSettingsCollection[].properties.protocol" options="protocol" group="Properties"> <help short="The protocol used to communicate with the backend."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.backendHttpSettingsCollection[].properties.requestTimeout" options="request-timeout" group="Properties"> <help short="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."/> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.backendHttpSettingsCollection[].properties.trustedRootCertificates" options="trusted-root-certificates" group="Properties"> <help short="Array of references to application gateway trusted root certificates."/> <item nullable="True" type="@SubResource_update"/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.backendSettingsCollection" options="backend-settings-collection" hide="True" group="Properties"> <help short="Backend settings of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.backendSettingsCollection[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendSettingsCollection[].name" options="name"> <help short="Name of the backend settings that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendSettingsCollection[].properties.hostName" options="host-name" group="Properties"> <help short="Server name indication to be sent to the backend servers for Tls protocol."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.backendSettingsCollection[].properties.pickHostNameFromBackendAddress" options="pick-host-name-from-backend-address" group="Properties"> <help short="Whether to pick server name indication from the host name of the backend server for Tls protocol. Default value is false."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.backendSettingsCollection[].properties.port" options="port" group="Properties"> <help short="The destination port on the backend."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.backendSettingsCollection[].properties.probe" options="probe" group="Properties"> <help short="Probe resource of an application gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.backendSettingsCollection[].properties.protocol" options="protocol" group="Properties"> <help short="The protocol used to communicate with the backend."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.backendSettingsCollection[].properties.timeout" options="timeout" group="Properties"> <help short="Connection timeout in seconds. Application Gateway will fail the request if response is not received within ConnectionTimeout. Acceptable values are from 1 second to 86400 seconds."/> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.backendSettingsCollection[].properties.trustedRootCertificates" options="trusted-root-certificates" group="Properties"> <help short="Array of references to application gateway trusted root certificates."/> <item nullable="True" type="@SubResource_update"/> </arg> </item> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.enableFips" options="enable-fips" hide="True" group="Properties"> <help short="Whether FIPS is enabled on the application gateway resource."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.firewallPolicy" options="firewall-policy" hide="True" group="Properties"> <help short="Reference to the FirewallPolicy resource."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.forceFirewallPolicyAssociation" options="force-firewall-policy-association" hide="True" group="Properties"> <help short="If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.frontendIPConfigurations" options="frontend-ip-configurations" hide="True" group="Properties"> <help short="Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.frontendIPConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.frontendIPConfigurations[].name" options="name"> <help short="Name of the frontend IP configuration that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.frontendIPConfigurations[].properties.privateIPAddress" options="private-ip-address" group="Properties"> <help short="PrivateIPAddress of the network interface IP Configuration."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.frontendIPConfigurations[].properties.privateIPAllocationMethod" options="private-ip-allocation-method" group="Properties"> <help short="The private IP address allocation method."/> <enum> <item name="Dynamic" value="&quot;Dynamic&quot;"/> <item name="Static" value="&quot;Static&quot;"/> </enum> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.frontendIPConfigurations[].properties.privateLinkConfiguration" options="private-link-configuration" group="Properties"> <help short="Reference to the application gateway private link configuration."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.frontendIPConfigurations[].properties.publicIPAddress" options="public-ip-address" group="Properties"> <help short="Reference to the PublicIP resource."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.frontendIPConfigurations[].properties.subnet" options="subnet" group="Properties"> <help short="Reference to the subnet resource."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.frontendPorts" options="frontend-ports" hide="True" group="Properties"> <help short="Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.frontendPorts[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.frontendPorts[].name" options="name"> <help short="Name of the frontend port that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.frontendPorts[].properties.port" options="port" group="Properties"> <help short="Frontend port."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.gatewayIPConfigurations" options="gateway-ip-configurations" hide="True" group="Properties"> <help short="Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.gatewayIPConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.gatewayIPConfigurations[].name" options="name"> <help short="Name of the IP configuration that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="object" var="$parameters.properties.gatewayIPConfigurations[].properties.subnet" options="subnet" group="Properties" cls="SubResource_update"> <help short="Reference to the subnet resource. A subnet from where application gateway gets its private address."/> <arg nullable="True" type="string" var="@SubResource_update.id" options="id"> <help short="Resource ID."/> </arg> </arg> </item> </arg> <arg nullable="True" type="object" var="$parameters.properties.globalConfiguration" options="global-configuration" hide="True" group="Properties"> <help short="Global Configuration."/> <arg nullable="True" type="boolean" var="$parameters.properties.globalConfiguration.enableRequestBuffering" options="enable-request-buffering"> <help short="Enable request buffering."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.globalConfiguration.enableResponseBuffering" options="enable-response-buffering"> <help short="Enable response buffering."/> </arg> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.httpListeners" options="http-listeners" hide="True" group="Properties"> <help short="Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.httpListeners[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.httpListeners[].name" options="name"> <help short="Name of the HTTP listener that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.httpListeners[].properties.customErrorConfigurations" options="custom-error-configurations" group="Properties"> <help short="Custom error configurations of the HTTP listener."/> <item nullable="True" type="object" cls="ApplicationGatewayCustomError_update"> <arg nullable="True" type="string" var="@ApplicationGatewayCustomError_update.customErrorPageUrl" options="custom-error-page-url"> <help short="Error page URL of the application gateway customer error."/> </arg> <arg nullable="True" type="string" var="@ApplicationGatewayCustomError_update.statusCode" options="status-code"> <help short="Status code of the application gateway customer error."/> <enum> <item name="HttpStatus403" value="&quot;HttpStatus403&quot;"/> <item name="HttpStatus502" value="&quot;HttpStatus502&quot;"/> </enum> </arg> </item> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.httpListeners[].properties.firewallPolicy" options="firewall-policy" group="Properties"> <help short="Reference to the FirewallPolicy resource."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.httpListeners[].properties.frontendIPConfiguration" options="frontend-ip-configuration" group="Properties"> <help short="Frontend IP configuration resource of an application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.httpListeners[].properties.frontendPort" options="frontend-port" group="Properties"> <help short="Frontend port resource of an application gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.httpListeners[].properties.hostName" options="host-name" group="Properties"> <help short="Host name of HTTP listener."/> </arg> <arg nullable="True" type="array<string>" var="$parameters.properties.httpListeners[].properties.hostNames" options="host-names" group="Properties"> <help short="List of Host names for HTTP Listener that allows special wildcard characters as well."/> <item nullable="True" type="string"/> </arg> <arg nullable="True" type="string" var="$parameters.properties.httpListeners[].properties.protocol" options="protocol" group="Properties"> <help short="Protocol of the HTTP listener."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.httpListeners[].properties.requireServerNameIndication" options="require-server-name-indication" group="Properties"> <help short="Applicable only if protocol is https. Enables SNI for multi-hosting."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.httpListeners[].properties.sslCertificate" options="ssl-certificate" group="Properties"> <help short="SSL certificate resource of an application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.httpListeners[].properties.sslProfile" options="ssl-profile" group="Properties"> <help short="SSL profile resource of the application gateway."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.listeners" options="listeners" hide="True" group="Properties"> <help short="Listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.listeners[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.listeners[].name" options="name"> <help short="Name of the listener that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.listeners[].properties.frontendIPConfiguration" options="frontend-ip-configuration" group="Properties"> <help short="Frontend IP configuration resource of an application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.listeners[].properties.frontendPort" options="frontend-port" group="Properties"> <help short="Frontend port resource of an application gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.listeners[].properties.protocol" options="protocol" group="Properties"> <help short="Protocol of the listener."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.listeners[].properties.sslCertificate" options="ssl-certificate" group="Properties"> <help short="SSL certificate resource of an application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.listeners[].properties.sslProfile" options="ssl-profile" group="Properties"> <help short="SSL profile resource of the application gateway."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.loadDistributionPolicies" options="load-distribution-policies" hide="True" group="Properties"> <help short="Load distribution policies of the application gateway resource."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.loadDistributionPolicies[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.loadDistributionPolicies[].name" options="name"> <help short="Name of the load distribution policy that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionAlgorithm" options="load-distribution-algorithm" group="Properties"> <help short="Load Distribution Targets resource of an application gateway."/> <enum> <item name="IpHash" value="&quot;IpHash&quot;"/> <item name="LeastConnections" value="&quot;LeastConnections&quot;"/> <item name="RoundRobin" value="&quot;RoundRobin&quot;"/> </enum> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets" options="load-distribution-targets" group="Properties"> <help short="Load Distribution Targets resource of an application gateway."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].name" options="name"> <help short="Name of the load distribution policy that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of the application gateway."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.weightPerServer" options="weight-per-server" group="Properties"> <help short="Weight per server. Range between 1 and 100."/> <format maximum="100" minimum="1"/> </arg> </item> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.privateLinkConfigurations" options="private-link-configurations" hide="True" group="Properties"> <help short="PrivateLink configurations on application gateway."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.privateLinkConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.privateLinkConfigurations[].name" options="name"> <help short="Name of the private link configuration that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations" options="ip-configurations" group="Properties"> <help short="An array of application gateway private link ip configurations."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].name" options="name"> <help short="The name of application gateway private link ip configuration."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.primary" options="primary" group="Properties"> <help short="Whether the ip configuration is primary or not."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAddress" options="private-ip-address" group="Properties"> <help short="The private IP address of the IP configuration."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAllocationMethod" options="private-ip-allocation-method" group="Properties"> <help short="The private IP address allocation method."/> <enum> <item name="Dynamic" value="&quot;Dynamic&quot;"/> <item name="Static" value="&quot;Static&quot;"/> </enum> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.subnet" options="subnet" group="Properties"> <help short="Reference to the subnet resource."/> </arg> </item> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.probes" options="probes" hide="True" group="Properties"> <help short="Probes of the application gateway resource."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.probes[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.probes[].name" options="name"> <help short="Name of the probe that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.probes[].properties.host" options="host" group="Properties"> <help short="Host name to send the probe to."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.probes[].properties.interval" options="interval" group="Properties"> <help short="The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds."/> </arg> <arg nullable="True" type="object" var="$parameters.properties.probes[].properties.match" options="match" group="Properties"> <help short="Criterion for classifying a healthy probe response."/> <arg nullable="True" type="string" var="$parameters.properties.probes[].properties.match.body" options="body"> <help short="Body that must be contained in the health response. Default value is empty."/> </arg> <arg nullable="True" type="array<string>" var="$parameters.properties.probes[].properties.match.statusCodes" options="status-codes"> <help short="Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399."/> <item nullable="True" type="string"/> </arg> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.probes[].properties.minServers" options="min-servers" group="Properties"> <help short="Minimum number of servers that are always marked healthy. Default value is 0."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.probes[].properties.path" options="path" group="Properties"> <help short="Relative path of probe. Valid path starts from '/'. Probe is sent to <Protocol>://<host>:<port><path>."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.probes[].properties.pickHostNameFromBackendHttpSettings" options="pick-host-name-from-backend-http-settings" group="Properties"> <help short="Whether the host header should be picked from the backend http settings. Default value is false."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.probes[].properties.pickHostNameFromBackendSettings" options="pick-host-name-from-backend-settings" group="Properties"> <help short="Whether the server name indication should be picked from the backend settings for Tls protocol. Default value is false."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.probes[].properties.port" options="port" group="Properties"> <help short="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."/> <format maximum="65535" minimum="1"/> </arg> <arg nullable="True" type="string" var="$parameters.properties.probes[].properties.protocol" options="protocol" group="Properties"> <help short="The protocol used for the probe."/> <enum> <item name="Http" value="&quot;Http&quot;"/> <item name="Https" value="&quot;Https&quot;"/> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Tls" value="&quot;Tls&quot;"/> </enum> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.probes[].properties.timeout" options="timeout" group="Properties"> <help short="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."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.probes[].properties.unhealthyThreshold" options="unhealthy-threshold" group="Properties"> <help short="The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.redirectConfigurations" options="redirect-configurations" hide="True" group="Properties"> <help short="Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.redirectConfigurations[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.redirectConfigurations[].name" options="name"> <help short="Name of the redirect configuration that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.redirectConfigurations[].properties.includePath" options="include-path" group="Properties"> <help short="Include path in the redirected url."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.redirectConfigurations[].properties.includeQueryString" options="include-query-string" group="Properties"> <help short="Include query string in the redirected url."/> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.redirectConfigurations[].properties.pathRules" options="path-rules" group="Properties"> <help short="Path rules specifying redirect configuration."/> <item nullable="True" type="@SubResource_update"/> </arg> <arg nullable="True" type="string" var="$parameters.properties.redirectConfigurations[].properties.redirectType" options="redirect-type" group="Properties"> <help short="HTTP redirection type."/> <enum> <item name="Found" value="&quot;Found&quot;"/> <item name="Permanent" value="&quot;Permanent&quot;"/> <item name="SeeOther" value="&quot;SeeOther&quot;"/> <item name="Temporary" value="&quot;Temporary&quot;"/> </enum> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.redirectConfigurations[].properties.requestRoutingRules" options="request-routing-rules" group="Properties"> <help short="Request routing specifying redirect configuration."/> <item nullable="True" type="@SubResource_update"/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.redirectConfigurations[].properties.targetListener" options="target-listener" group="Properties"> <help short="Reference to a listener to redirect the request to."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.redirectConfigurations[].properties.targetUrl" options="target-url" group="Properties"> <help short="Url to redirect the request to."/> </arg> <arg nullable="True" type="array<@SubResource_update>" var="$parameters.properties.redirectConfigurations[].properties.urlPathMaps" options="url-path-maps" group="Properties"> <help short="Url path maps specifying default redirect configuration."/> <item nullable="True" type="@SubResource_update"/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.requestRoutingRules" options="request-routing-rules" hide="True" group="Properties"> <help short="Request routing rules of the application gateway resource."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.requestRoutingRules[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.requestRoutingRules[].name" options="name"> <help short="Name of the request routing rule that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of the application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.backendHttpSettings" options="backend-http-settings" group="Properties"> <help short="Backend http settings resource of the application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.httpListener" options="http-listener" group="Properties"> <help short="Http listener resource of the application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.loadDistributionPolicy" options="load-distribution-policy" group="Properties"> <help short="Load Distribution Policy resource of the application gateway."/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.requestRoutingRules[].properties.priority" options="priority" group="Properties"> <help short="Priority of the request routing rule."/> <format maximum="20000" minimum="1"/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.redirectConfiguration" options="redirect-configuration" group="Properties"> <help short="Redirect configuration resource of the application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.rewriteRuleSet" options="rewrite-rule-set" group="Properties"> <help short="Rewrite Rule Set resource in Basic rule of the application gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.requestRoutingRules[].properties.ruleType" options="rule-type" group="Properties"> <help short="Rule type."/> <enum> <item name="Basic" value="&quot;Basic&quot;"/> <item name="PathBasedRouting" value="&quot;PathBasedRouting&quot;"/> </enum> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.requestRoutingRules[].properties.urlPathMap" options="url-path-map" group="Properties"> <help short="URL path map resource of the application gateway."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.rewriteRuleSets" options="rewrite-rule-sets" hide="True" group="Properties"> <help short="Rewrite rules for the application gateway resource."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].name" options="name"> <help short="Name of the rewrite rule set that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules" options="rewrite-rules" group="Properties"> <help short="Rewrite rules in the rewrite rule set."/> <item nullable="True" type="object"> <arg nullable="True" type="object" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet" options="action-set"> <help short="Set of actions to be done as part of the rewrite Rule."/> <arg nullable="True" type="array<object>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.requestHeaderConfigurations" options="request-header-configurations"> <help short="Request Header Actions in the Action Set."/> <item nullable="True" type="object" cls="ApplicationGatewayHeaderConfiguration_update"> <arg nullable="True" type="string" var="@ApplicationGatewayHeaderConfiguration_update.headerName" options="header-name"> <help short="Header name of the header configuration."/> </arg> <arg nullable="True" type="string" var="@ApplicationGatewayHeaderConfiguration_update.headerValue" options="header-value"> <help short="Header value of the header configuration."/> </arg> </item> </arg> <arg nullable="True" type="array<@ApplicationGatewayHeaderConfiguration_update>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.responseHeaderConfigurations" options="response-header-configurations"> <help short="Response Header Actions in the Action Set."/> <item nullable="True" type="@ApplicationGatewayHeaderConfiguration_update"/> </arg> <arg nullable="True" type="object" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration" options="url-configuration"> <help short="Url Configuration Action in the Action Set."/> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedPath" options="modified-path"> <help short="Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedQueryString" options="modified-query-string"> <help short="Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.reroute" options="reroute"> <help short="If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false."/> </arg> </arg> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions" options="conditions"> <help short="Conditions based on which the action set execution will be evaluated."/> <item nullable="True" type="object"> <arg nullable="True" type="boolean" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].ignoreCase" options="ignore-case"> <help short="Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison."/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].negate" options="negate"> <help short="Setting this value as truth will force to check the negation of the condition given by the user."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].pattern" options="pattern"> <help short="The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].variable" options="variable"> <help short="The condition parameter of the RewriteRuleCondition."/> </arg> </item> </arg> <arg nullable="True" type="string" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].name" options="name"> <help short="Name of the rewrite rule that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="integer" var="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].ruleSequence" options="rule-sequence"> <help short="Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet."/> </arg> </item> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.routingRules" options="routing-rules" hide="True" group="Properties"> <help short="Routing rules of the application gateway resource."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.routingRules[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.routingRules[].name" options="name"> <help short="Name of the routing rule that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.routingRules[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of the application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.routingRules[].properties.backendSettings" options="backend-settings" group="Properties"> <help short="Backend settings resource of the application gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.routingRules[].properties.listener" options="listener" group="Properties"> <help short="Listener resource of the application gateway."/> </arg> <arg type="integer32" var="$parameters.properties.routingRules[].properties.priority" options="priority" group="Properties"> <help short="Priority of the routing rule."/> <format maximum="20000" minimum="1"/> </arg> <arg nullable="True" type="string" var="$parameters.properties.routingRules[].properties.ruleType" options="rule-type" group="Properties"> <help short="Rule type."/> <enum> <item name="Basic" value="&quot;Basic&quot;"/> <item name="PathBasedRouting" value="&quot;PathBasedRouting&quot;"/> </enum> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.sslCertificates" options="ssl-certificates" hide="True" group="Properties"> <help short="SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.sslCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.sslCertificates[].name" options="name"> <help short="Name of the SSL certificate that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.sslCertificates[].properties.data" options="data" group="Properties"> <help short="Base-64 encoded pfx certificate. Only applicable in PUT Request."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.sslCertificates[].properties.keyVaultSecretId" options="key-vault-secret-id" group="Properties"> <help short="Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.sslCertificates[].properties.password" options="password" group="Properties"> <help short="Password for the pfx file specified in data. Only applicable in PUT request."/> </arg> </item> </arg> <arg nullable="True" type="object" var="$parameters.properties.sslPolicy" options="ssl-policy" hide="True" group="Properties" cls="ApplicationGatewaySslPolicy_update"> <help short="SSL policy of the application gateway resource."/> <arg nullable="True" type="array<string>" var="@ApplicationGatewaySslPolicy_update.cipherSuites" options="cipher-suites"> <help short="Ssl cipher suites to be enabled in the specified order to application gateway."/> <item nullable="True" type="string"> <enum> <item name="TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_128_CBC_SHA" value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_256_CBC_SHA" value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item name="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384" value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item name="TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item name="TLS_RSA_WITH_3DES_EDE_CBC_SHA" value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item name="TLS_RSA_WITH_AES_128_CBC_SHA" value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item name="TLS_RSA_WITH_AES_128_CBC_SHA256" value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item name="TLS_RSA_WITH_AES_128_GCM_SHA256" value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item name="TLS_RSA_WITH_AES_256_CBC_SHA" value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item name="TLS_RSA_WITH_AES_256_CBC_SHA256" value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item name="TLS_RSA_WITH_AES_256_GCM_SHA384" value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </arg> <arg nullable="True" type="array<string>" var="@ApplicationGatewaySslPolicy_update.disabledSslProtocols" options="disabled-ssl-protocols"> <help short="Ssl protocols to be disabled on application gateway."/> <item nullable="True" type="string"> <enum> <item name="TLSv1_0" value="&quot;TLSv1_0&quot;"/> <item name="TLSv1_1" value="&quot;TLSv1_1&quot;"/> <item name="TLSv1_2" value="&quot;TLSv1_2&quot;"/> <item name="TLSv1_3" value="&quot;TLSv1_3&quot;"/> </enum> </item> </arg> <arg nullable="True" type="string" var="@ApplicationGatewaySslPolicy_update.minProtocolVersion" options="min-protocol-version"> <help short="Minimum version of Ssl protocol to be supported on application gateway."/> <enum> <item name="TLSv1_0" value="&quot;TLSv1_0&quot;"/> <item name="TLSv1_1" value="&quot;TLSv1_1&quot;"/> <item name="TLSv1_2" value="&quot;TLSv1_2&quot;"/> <item name="TLSv1_3" value="&quot;TLSv1_3&quot;"/> </enum> </arg> <arg nullable="True" type="string" var="@ApplicationGatewaySslPolicy_update.policyName" options="policy-name"> <help short="Name of Ssl predefined policy."/> <enum> <item name="AppGwSslPolicy20150501" value="&quot;AppGwSslPolicy20150501&quot;"/> <item name="AppGwSslPolicy20170401" value="&quot;AppGwSslPolicy20170401&quot;"/> <item name="AppGwSslPolicy20170401S" value="&quot;AppGwSslPolicy20170401S&quot;"/> <item name="AppGwSslPolicy20220101" value="&quot;AppGwSslPolicy20220101&quot;"/> <item name="AppGwSslPolicy20220101S" value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </arg> <arg nullable="True" type="string" var="@ApplicationGatewaySslPolicy_update.policyType" options="policy-type"> <help short="Type of Ssl Policy."/> <enum> <item name="Custom" value="&quot;Custom&quot;"/> <item name="CustomV2" value="&quot;CustomV2&quot;"/> <item name="Predefined" value="&quot;Predefined&quot;"/> </enum> </arg> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.trustedClientCertificates" options="trusted-client-certificates" hide="True" group="Properties"> <help short="Trusted client certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.trustedClientCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.trustedClientCertificates[].name" options="name"> <help short="Name of the trusted client certificate that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.trustedClientCertificates[].properties.data" options="data" group="Properties"> <help short="Certificate public data."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.trustedRootCertificates" options="trusted-root-certificates" hide="True" group="Properties"> <help short="Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.trustedRootCertificates[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.trustedRootCertificates[].name" options="name"> <help short="Name of the trusted root certificate that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.trustedRootCertificates[].properties.data" options="data" group="Properties"> <help short="Certificate public data."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.trustedRootCertificates[].properties.keyVaultSecretId" options="key-vault-secret-id" group="Properties"> <help short="Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault."/> </arg> </item> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.urlPathMaps" options="url-path-maps" hide="True" group="Properties"> <help short="URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://learn.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.urlPathMaps[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.urlPathMaps[].name" options="name"> <help short="Name of the URL path map that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.defaultBackendAddressPool" options="default-backend-address-pool" group="Properties"> <help short="Default backend address pool resource of URL path map."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.defaultBackendHttpSettings" options="default-backend-http-settings" group="Properties"> <help short="Default backend http settings resource of URL path map."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.defaultLoadDistributionPolicy" options="default-load-distribution-policy" group="Properties"> <help short="Default Load Distribution Policy resource of URL path map."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.defaultRedirectConfiguration" options="default-redirect-configuration" group="Properties"> <help short="Default redirect configuration resource of URL path map."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.defaultRewriteRuleSet" options="default-rewrite-rule-set" group="Properties"> <help short="Default Rewrite rule set resource of URL path map."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.urlPathMaps[].properties.pathRules" options="path-rules" group="Properties"> <help short="Path rule of URL path map resource."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$parameters.properties.urlPathMaps[].properties.pathRules[].id" options="id"> <help short="Resource ID."/> </arg> <arg nullable="True" type="string" var="$parameters.properties.urlPathMaps[].properties.pathRules[].name" options="name"> <help short="Name of the path rule that is unique within an Application Gateway."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendAddressPool" options="backend-address-pool" group="Properties"> <help short="Backend address pool resource of URL path map path rule."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendHttpSettings" options="backend-http-settings" group="Properties"> <help short="Backend http settings resource of URL path map path rule."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.firewallPolicy" options="firewall-policy" group="Properties"> <help short="Reference to the FirewallPolicy resource."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.loadDistributionPolicy" options="load-distribution-policy" group="Properties"> <help short="Load Distribution Policy resource of URL path map path rule."/> </arg> <arg nullable="True" type="array<string>" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.paths" options="paths" group="Properties"> <help short="Path rules of URL path map."/> <item nullable="True" type="string"/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.redirectConfiguration" options="redirect-configuration" group="Properties"> <help short="Redirect configuration resource of URL path map path rule."/> </arg> <arg nullable="True" type="@SubResource_update" var="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.rewriteRuleSet" options="rewrite-rule-set" group="Properties"> <help short="Rewrite rule set resource of URL path map path rule."/> </arg> </item> </arg> </item> </arg> <arg nullable="True" type="object" var="$parameters.properties.webApplicationFirewallConfiguration" options="web-application-firewall-configuration" hide="True" group="Properties"> <help short="Web application firewall configuration."/> <arg nullable="True" type="array<object>" var="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups" options="disabled-rule-groups"> <help short="The disabled rule groups."/> <item nullable="True" type="object"> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].ruleGroupName" options="rule-group-name"> <help short="The name of the rule group that will be disabled."/> </arg> <arg nullable="True" type="array<integer32>" var="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].rules" options="rules"> <help short="The list of rules that will be disabled. If null, all rules of the rule group will be disabled."/> <item nullable="True" type="integer32"/> </arg> </item> </arg> <arg type="boolean" var="$parameters.properties.webApplicationFirewallConfiguration.enabled" options="enabled"> <help short="Whether the web application firewall is enabled or not."/> </arg> <arg nullable="True" type="array<object>" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions" options="exclusions"> <help short="The exclusion list."/> <item nullable="True" type="object"> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].matchVariable" options="match-variable"> <help short="The variable to be excluded."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selector" options="selector"> <help short="When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selectorMatchOperator" options="selector-match-operator"> <help short="When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to."/> </arg> </item> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.webApplicationFirewallConfiguration.fileUploadLimitInMb" options="file-upload-limit-in-mb"> <help short="Maximum file upload size in Mb for WAF."/> <format minimum="0"/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.firewallMode" options="firewall-mode"> <help short="Web application firewall mode."/> <enum> <item name="Detection" value="&quot;Detection&quot;"/> <item name="Prevention" value="&quot;Prevention&quot;"/> </enum> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySize" options="max-request-body-size"> <help short="Maximum request body size for WAF."/> <format maximum="128" minimum="8"/> </arg> <arg nullable="True" type="integer32" var="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySizeInKb" options="max-request-body-size-in-kb"> <help short="Maximum request body size in Kb for WAF."/> <format maximum="128" minimum="8"/> </arg> <arg nullable="True" type="boolean" var="$parameters.properties.webApplicationFirewallConfiguration.requestBodyCheck" options="request-body-check"> <help short="Whether allow WAF to check request Body."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.ruleSetType" options="rule-set-type"> <help short="The type of the web application firewall rule set. Possible values are: 'OWASP'."/> </arg> <arg type="string" var="$parameters.properties.webApplicationFirewallConfiguration.ruleSetVersion" options="rule-set-version"> <help short="The version of the rule set type."/> </arg> </arg> </argGroup> <argGroup name="Sku"> <arg nullable="True" type="string" var="$parameters.properties.sku.tier" options="tier" hide="True" group="Sku"> <help short="Tier of an application gateway."/> <enum> <item name="Standard" value="&quot;Standard&quot;"/> <item name="Standard_v2" value="&quot;Standard_v2&quot;"/> <item name="WAF" value="&quot;WAF&quot;"/> <item name="WAF_v2" value="&quot;WAF_v2&quot;"/> </enum> </arg> </argGroup> <operation operationId="ApplicationGateways_Get"> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}"> <request method="get"> <path> <param type="string" name="applicationGatewayName" arg="$Path.applicationGatewayName" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2022-01-01&quot;"/> </const> </query> </request> <response statusCode="200"> <body> <json var="$Instance"> <schema type="object" cls="ApplicationGateway_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </prop> <prop type="IdentityObject" name="identity"> <prop readOnly="True" type="string" name="principalId"/> <prop readOnly="True" type="string" name="tenantId"/> <prop type="string" name="type"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;SystemAssigned&quot;"/> <item value="&quot;SystemAssigned, UserAssigned&quot;"/> <item value="&quot;UserAssigned&quot;"/> </enum> </prop> <prop type="object" name="userAssignedIdentities"> <additionalProp> <item type="object"> <prop readOnly="True" type="string" name="clientId"/> <prop readOnly="True" type="string" name="principalId"/> </item> </additionalProp> </prop> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="authenticationCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="autoscaleConfiguration"> <prop type="integer32" name="maxCapacity"> <format minimum="2"/> </prop> <prop type="integer32" name="minCapacity" required="True"> <format minimum="0"/> </prop> </prop> <prop type="array<object>" name="backendAddressPools"> <item type="object" cls="ApplicationGatewayBackendAddressPool_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="backendAddresses"> <item type="object"> <prop type="string" name="fqdn"/> <prop type="string" name="ipAddress"/> </item> </prop> <prop readOnly="True" type="array<object>" name="backendIPConfigurations"> <item type="object" cls="NetworkInterfaceIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}/ipConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<@ApplicationGatewayBackendAddressPool_read>" name="applicationGatewayBackendAddressPools"> <item type="@ApplicationGatewayBackendAddressPool_read"/> </prop> <prop type="array<@ApplicationSecurityGroup_read>" name="applicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="@SubResource_read" name="gatewayLoadBalancer"/> <prop type="array<object>" name="loadBalancerBackendAddressPools"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/backendAddressPools/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<@NetworkInterfaceIPConfiguration_read>" name="backendIPConfigurations"> <item type="@NetworkInterfaceIPConfiguration_read"/> </prop> <prop type="integer32" name="drainPeriodInSeconds"/> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatRules"> <item type="@SubResource_read"/> </prop> <prop type="array<object>" name="loadBalancerBackendAddresses"> <item type="object"> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="adminState"> <enum> <item value="&quot;Down&quot;"/> <item value="&quot;Drain&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Up&quot;"/> </enum> </prop> <prop readOnly="True" type="array<object>" name="inboundNatRulesPortMapping"> <item type="object"> <prop type="integer32" name="backendPort"/> <prop type="integer32" name="frontendPort"/> <prop type="string" name="inboundNatRuleName"/> </item> </prop> <prop type="string" name="ipAddress"/> <prop type="@SubResource_read" name="loadBalancerFrontendIPConfiguration"/> <prop readOnly="True" type="@SubResource_read" name="networkInterfaceIPConfiguration"/> <prop type="@SubResource_read" name="subnet"/> <prop type="@SubResource_read" name="virtualNetwork"/> </prop> </item> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="loadBalancingRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="location"/> <prop readOnly="True" type="@SubResource_read" name="outboundRule"/> <prop readOnly="True" type="array<@SubResource_read>" name="outboundRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="tunnelInterfaces"> <item type="object"> <prop type="integer32" name="identifier"/> <prop type="integer32" name="port"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Native&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VXLAN&quot;"/> </enum> </prop> <prop type="string" name="type"> <enum> <item value="&quot;External&quot;"/> <item value="&quot;Internal&quot;"/> <item value="&quot;None&quot;"/> </enum> </prop> </item> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="loadBalancerInboundNatRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/inboundNatRules/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop readOnly="True" type="@NetworkInterfaceIPConfiguration_read" name="backendIPConfiguration"/> <prop type="integer32" name="backendPort"/> <prop type="boolean" name="enableFloatingIP"/> <prop type="boolean" name="enableTcpReset"/> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="integer32" name="frontendPort"/> <prop type="integer32" name="frontendPortRangeEnd"/> <prop type="integer32" name="frontendPortRangeStart"/> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop type="string" name="protocol"> <enum> <item value="&quot;All&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="object" name="privateLinkConnectionProperties"> <prop readOnly="True" type="array<string>" name="fqdns"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="groupId"/> <prop readOnly="True" type="string" name="requiredMemberName"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@PublicIPAddress_read" name="publicIPAddress"/> <prop type="@Subnet_read" name="subnet"/> <prop type="array<object>" name="virtualNetworkTaps"> <item type="object" cls="VirtualNetworkTap_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkTaps/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="destinationLoadBalancerFrontEndIPConfiguration" cls="FrontendIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/loadBalancers/{}/frontendIPConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="gatewayLoadBalancer"/> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatPools"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="inboundNatRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="loadBalancingRules"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<@SubResource_read>" name="outboundRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@PublicIPAddress_read" name="publicIPAddress"/> <prop type="@SubResource_read" name="publicIPPrefix"/> <prop type="object" name="subnet" cls="Subnet_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworks/{}/subnets/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="addressPrefix"/> <prop type="array<string>" name="addressPrefixes"> <item type="string"/> </prop> <prop type="array<@ApplicationGatewayIPConfiguration_read>" name="applicationGatewayIpConfigurations"> <item type="@ApplicationGatewayIPConfiguration_read"/> </prop> <prop type="array<object>" name="delegations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<string>" name="actions"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="serviceName"/> </prop> <prop type="string" name="type"/> </item> </prop> <prop type="array<@SubResource_read>" name="ipAllocations"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="array<object>" name="ipConfigurationProfiles"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<object>" name="ipConfigurations"> <item type="object" cls="IPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <default value="&quot;Dynamic&quot;"/> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="publicIPAddress" cls="PublicIPAddress_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/publicIPAddresses/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="ddosSettings"> <prop type="@SubResource_read" name="ddosCustomPolicy"/> <prop type="boolean" name="protectedIP"/> <prop type="string" name="protectionCoverage"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> </prop> <prop type="string" name="deleteOption"> <enum> <item value="&quot;Delete&quot;"/> <item value="&quot;Detach&quot;"/> </enum> </prop> <prop type="object" name="dnsSettings"> <prop type="string" name="domainNameLabel"/> <prop type="string" name="fqdn"/> <prop type="string" name="reverseFqdn"/> </prop> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop type="string" name="ipAddress"/> <prop readOnly="True" type="@IPConfiguration_read" name="ipConfiguration"/> <prop type="array<object>" name="ipTags"> <item type="object"> <prop type="string" name="ipTagType"/> <prop type="string" name="tag"/> </item> </prop> <prop type="@PublicIPAddress_read" name="linkedPublicIPAddress"/> <prop type="string" name="migrationPhase"> <enum> <item value="&quot;Abort&quot;"/> <item value="&quot;Commit&quot;"/> <item value="&quot;Committed&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Prepare&quot;"/> </enum> </prop> <prop type="object" name="natGateway"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/natGateways/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="idleTimeoutInMinutes"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<@SubResource_read>" name="publicIpAddresses"> <item type="@SubResource_read"/> </prop> <prop type="array<@SubResource_read>" name="publicIpPrefixes"> <item type="@SubResource_read"/> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop readOnly="True" type="array<@SubResource_read>" name="subnets"> <item type="@SubResource_read"/> </prop> </prop> <prop type="object" name="sku"> <prop type="string" name="name"> <enum> <item value="&quot;Standard&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="publicIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="publicIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="publicIPPrefix"/> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="@PublicIPAddress_read" name="servicePublicIPAddress"/> </prop> <prop type="object" name="sku"> <prop type="string" name="name"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> <prop type="string" name="tier"> <enum> <item value="&quot;Global&quot;"/> <item value="&quot;Regional&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> </item> </prop> <prop type="@SubResource_read" name="natGateway"/> <prop type="object" name="networkSecurityGroup" cls="NetworkSecurityGroup_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkSecurityGroups/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="array<@SecurityRule_read>" name="defaultSecurityRules"> <item type="@SecurityRule_read"/> </prop> <prop readOnly="True" type="array<object>" name="flowLogs"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkWatchers/{}/flowLogs/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="enabled"/> <prop type="object" name="flowAnalyticsConfiguration"> <prop type="object" name="networkWatcherFlowAnalyticsConfiguration"> <prop type="boolean" name="enabled"/> <prop type="integer32" name="trafficAnalyticsInterval"/> <prop type="string" name="workspaceId"/> <prop type="string" name="workspaceRegion"/> <prop type="string" name="workspaceResourceId"/> </prop> </prop> <prop type="object" name="format"> <prop type="string" name="type"> <enum> <item value="&quot;JSON&quot;"/> </enum> </prop> <prop type="integer32" name="version"> <default value="0"/> </prop> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="retentionPolicy"> <prop type="integer32" name="days"> <default value="0"/> </prop> <prop type="boolean" name="enabled"> <default value="false"/> </prop> </prop> <prop type="string" name="storageId" required="True"/> <prop readOnly="True" type="string" name="targetResourceGuid"/> <prop type="string" name="targetResourceId" required="True"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="boolean" name="flushConnection"/> <prop readOnly="True" type="array<object>" name="networkInterfaces"> <item type="object" cls="NetworkInterface_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="object" name="extendedLocation" cls="ExtendedLocation_read"> <prop type="string" name="name"/> <prop type="string" name="type"> <enum> <item value="&quot;EdgeZone&quot;"/> </enum> </prop> </prop> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="auxiliaryMode"> <enum> <item value="&quot;Floating&quot;"/> <item value="&quot;MaxConnections&quot;"/> <item value="&quot;None&quot;"/> </enum> </prop> <prop type="object" name="dnsSettings"> <prop readOnly="True" type="array<string>" name="appliedDnsServers"> <item type="string"/> </prop> <prop type="array<string>" name="dnsServers"> <item type="string"/> </prop> <prop type="string" name="internalDnsNameLabel"/> <prop readOnly="True" type="string" name="internalDomainNameSuffix"/> <prop readOnly="True" type="string" name="internalFqdn"/> </prop> <prop readOnly="True" type="@SubResource_read" name="dscpConfiguration"/> <prop type="boolean" name="enableAcceleratedNetworking"/> <prop type="boolean" name="enableIPForwarding"/> <prop readOnly="True" type="array<string>" name="hostedWorkloads"> <item type="string"/> </prop> <prop type="array<@NetworkInterfaceIPConfiguration_read>" name="ipConfigurations"> <item type="@NetworkInterfaceIPConfiguration_read"/> </prop> <prop readOnly="True" type="string" name="macAddress"/> <prop type="string" name="migrationPhase"> <enum> <item value="&quot;Abort&quot;"/> <item value="&quot;Commit&quot;"/> <item value="&quot;Committed&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;Prepare&quot;"/> </enum> </prop> <prop type="@NetworkSecurityGroup_read" name="networkSecurityGroup"/> <prop type="string" name="nicType"> <enum> <item value="&quot;Elastic&quot;"/> <item value="&quot;Standard&quot;"/> </enum> </prop> <prop readOnly="True" type="boolean" name="primary"/> <prop type="object" name="privateEndpoint" cls="PrivateEndpoint_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateEndpoints/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<@ApplicationSecurityGroup_read>" name="applicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="array<object>" name="customDnsConfigs"> <item type="object"> <prop type="string" name="fqdn"/> <prop type="array<string>" name="ipAddresses"> <item type="string"/> </prop> </item> </prop> <prop type="string" name="customNetworkInterfaceName"/> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="groupId"/> <prop type="string" name="memberName"/> <prop type="string" name="privateIPAddress"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@PrivateLinkServiceConnection_read>" name="manualPrivateLinkServiceConnections"> <item type="@PrivateLinkServiceConnection_read"/> </prop> <prop readOnly="True" type="array<@NetworkInterface_read>" name="networkInterfaces"> <item type="@NetworkInterface_read"/> </prop> <prop type="array<object>" name="privateLinkServiceConnections"> <item type="object" cls="PrivateLinkServiceConnection_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<string>" name="groupIds"> <item type="string"/> </prop> <prop type="object" name="privateLinkServiceConnectionState" cls="PrivateLinkServiceConnectionState_read"> <prop type="string" name="actionsRequired"/> <prop type="string" name="description"/> <prop type="string" name="status"/> </prop> <prop type="string" name="privateLinkServiceId"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="requestMessage"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="object" name="privateLinkService"> <prop readOnly="True" type="string" name="etag"/> <prop type="@ExtendedLocation_read" name="extendedLocation"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateLinkServices/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="alias"/> <prop type="object" name="autoApproval"> <prop type="array<string>" name="subscriptions"> <item type="string"/> </prop> </prop> <prop type="boolean" name="enableProxyProtocol"/> <prop type="array<string>" name="fqdns"> <item type="string"/> </prop> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAddressVersion"> <enum> <item value="&quot;IPv4&quot;"/> <item value="&quot;IPv6&quot;"/> </enum> </prop> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@Subnet_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@FrontendIPConfiguration_read>" name="loadBalancerFrontendIpConfigurations"> <item type="@FrontendIPConfiguration_read"/> </prop> <prop readOnly="True" type="array<@NetworkInterface_read>" name="networkInterfaces"> <item type="@NetworkInterface_read"/> </prop> <prop readOnly="True" type="array<object>" name="privateEndpointConnections"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/privateLinkServices/{}/privateEndpointConnections/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="linkIdentifier"/> <prop readOnly="True" type="@PrivateEndpoint_read" name="privateEndpoint"/> <prop type="@PrivateLinkServiceConnectionState_read" name="privateLinkServiceConnectionState"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="visibility"> <prop type="array<string>" name="subscriptions"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop readOnly="True" type="array<@NetworkInterfaceTapConfiguration_read>" name="tapConfigurations"> <item type="@NetworkInterfaceTapConfiguration_read"/> </prop> <prop readOnly="True" type="@SubResource_read" name="virtualMachine"/> <prop readOnly="True" type="boolean" name="vnetEncryptionSupported"/> <prop type="string" name="workloadType"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="securityRules"> <item type="object" cls="SecurityRule_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="access" required="True"> <enum> <item value="&quot;Allow&quot;"/> <item value="&quot;Deny&quot;"/> </enum> </prop> <prop type="string" name="description"/> <prop type="string" name="destinationAddressPrefix"/> <prop type="array<string>" name="destinationAddressPrefixes"> <item type="string"/> </prop> <prop type="array<@ApplicationSecurityGroup_read>" name="destinationApplicationSecurityGroups"> <item type="@ApplicationSecurityGroup_read"/> </prop> <prop type="string" name="destinationPortRange"/> <prop type="array<string>" name="destinationPortRanges"> <item type="string"/> </prop> <prop type="string" name="direction" required="True"> <enum> <item value="&quot;Inbound&quot;"/> <item value="&quot;Outbound&quot;"/> </enum> </prop> <prop type="integer32" name="priority"/> <prop type="string" name="protocol" required="True"> <enum> <item value="&quot;*&quot;"/> <item value="&quot;Ah&quot;"/> <item value="&quot;Esp&quot;"/> <item value="&quot;Icmp&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="sourceAddressPrefix"/> <prop type="array<string>" name="sourceAddressPrefixes"> <item type="string"/> </prop> <prop type="array<object>" name="sourceApplicationSecurityGroups"> <item type="object" cls="ApplicationSecurityGroup_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationSecurityGroups/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="string" name="sourcePortRange"/> <prop type="array<string>" name="sourcePortRanges"> <item type="string"/> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="string" name="privateEndpointNetworkPolicies"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop readOnly="True" type="array<@PrivateEndpoint_read>" name="privateEndpoints"> <item type="@PrivateEndpoint_read"/> </prop> <prop type="string" name="privateLinkServiceNetworkPolicies"> <default value="&quot;Enabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="purpose"/> <prop readOnly="True" type="array<object>" name="resourceNavigationLinks"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop readOnly="True" type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="link"/> <prop type="string" name="linkedResourceType"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="routeTable"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/routeTables/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="disableBgpRoutePropagation"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="routes"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/routeTables/{}/routes/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="addressPrefix"/> <prop type="boolean" name="hasBgpOverride"/> <prop type="string" name="nextHopIpAddress"/> <prop type="string" name="nextHopType" required="True"> <enum> <item value="&quot;Internet&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VirtualAppliance&quot;"/> <item value="&quot;VirtualNetworkGateway&quot;"/> <item value="&quot;VnetLocal&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="array<object>" name="serviceAssociationLinks"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="allowDelete"/> <prop type="string" name="link"/> <prop type="string" name="linkedResourceType"/> <prop type="array<string>" name="locations"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="serviceEndpointPolicies"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/serviceEndpointPolicies/{}"/> </prop> <prop readOnly="True" type="string" name="kind"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<string>" name="contextualServiceEndpointPolicies"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="string" name="serviceAlias"/> <prop type="array<object>" name="serviceEndpointPolicyDefinitions"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/serviceEndpointPolicies/{}/serviceEndpointPolicyDefinitions/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="description"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="service"/> <prop type="array<string>" name="serviceResources"> <item type="string"/> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="array<@Subnet_read>" name="subnets"> <item type="@Subnet_read"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="serviceEndpoints"> <item type="object"> <prop type="array<string>" name="locations"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="service"/> </item> </prop> </prop> <prop type="string" name="type"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </prop> <prop type="@NetworkInterfaceIPConfiguration_read" name="destinationNetworkInterfaceIPConfiguration"/> <prop type="integer" name="destinationPort"/> <prop readOnly="True" type="array<object>" name="networkInterfaceTapConfigurations"> <item type="object" cls="NetworkInterfaceTapConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/networkInterfaces/{}/tapConfigurations/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@VirtualNetworkTap_read" name="virtualNetworkTap"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> </prop> <prop type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="backendHttpSettingsCollection"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="affinityCookieName"/> <prop type="array<@SubResource_read>" name="authenticationCertificates"> <item type="@SubResource_read"/> </prop> <prop type="object" name="connectionDraining"> <prop type="integer32" name="drainTimeoutInSec" required="True"> <format maximum="3600" minimum="1"/> </prop> <prop type="boolean" name="enabled" required="True"/> </prop> <prop type="string" name="cookieBasedAffinity"> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="hostName"/> <prop type="string" name="path"/> <prop type="boolean" name="pickHostNameFromBackendAddress"/> <prop type="integer32" name="port"/> <prop type="@SubResource_read" name="probe"/> <prop type="boolean" name="probeEnabled"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="requestTimeout"/> <prop type="array<@SubResource_read>" name="trustedRootCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="backendSettingsCollection"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="hostName"/> <prop type="boolean" name="pickHostNameFromBackendAddress"/> <prop type="integer32" name="port"/> <prop type="@SubResource_read" name="probe"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="timeout"/> <prop type="array<@SubResource_read>" name="trustedRootCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<@ApplicationGatewayCustomError_read>" name="customErrorConfigurations"> <item type="@ApplicationGatewayCustomError_read"/> </prop> <prop type="boolean" name="enableFips"/> <prop type="boolean" name="enableHttp2"/> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="boolean" name="forceFirewallPolicyAssociation"/> <prop type="array<object>" name="frontendIPConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="privateLinkConfiguration"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="publicIPAddress"/> <prop type="@SubResource_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="frontendPorts"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="port"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="gatewayIPConfigurations"> <item type="object" cls="ApplicationGatewayIPConfiguration_read"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="object" name="subnet" cls="SubResource_read"> <prop type="string" name="id"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="globalConfiguration"> <prop type="boolean" name="enableRequestBuffering"/> <prop type="boolean" name="enableResponseBuffering"/> </prop> <prop type="array<object>" name="httpListeners"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="customErrorConfigurations"> <item type="object" cls="ApplicationGatewayCustomError_read"> <prop type="string" name="customErrorPageUrl"/> <prop type="string" name="statusCode"> <enum> <item value="&quot;HttpStatus403&quot;"/> <item value="&quot;HttpStatus502&quot;"/> </enum> </prop> </item> </prop> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="@SubResource_read" name="frontendPort"/> <prop type="string" name="hostName"/> <prop type="array<string>" name="hostNames"> <item type="string"/> </prop> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="boolean" name="requireServerNameIndication"/> <prop type="@SubResource_read" name="sslCertificate"/> <prop type="@SubResource_read" name="sslProfile"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="listeners"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="frontendIPConfiguration"/> <prop type="@SubResource_read" name="frontendPort"/> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="sslCertificate"/> <prop type="@SubResource_read" name="sslProfile"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="loadDistributionPolicies"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="loadDistributionAlgorithm"> <enum> <item value="&quot;IpHash&quot;"/> <item value="&quot;LeastConnections&quot;"/> <item value="&quot;RoundRobin&quot;"/> </enum> </prop> <prop type="array<object>" name="loadDistributionTargets"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="integer32" name="weightPerServer"> <format maximum="100" minimum="1"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="operationalState"> <enum> <item value="&quot;Running&quot;"/> <item value="&quot;Starting&quot;"/> <item value="&quot;Stopped&quot;"/> <item value="&quot;Stopping&quot;"/> </enum> </prop> <prop readOnly="True" type="array<object>" name="privateEndpointConnections"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}/privateEndpointConnections/{}"/> </prop> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="linkIdentifier"/> <prop readOnly="True" type="@PrivateEndpoint_read" name="privateEndpoint"/> <prop type="@PrivateLinkServiceConnectionState_read" name="privateLinkServiceConnectionState"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="privateLinkConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="ipConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary"/> <prop type="string" name="privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="subnet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="probes"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="host"/> <prop type="integer32" name="interval"/> <prop type="object" name="match"> <prop type="string" name="body"/> <prop type="array<string>" name="statusCodes"> <item type="string"/> </prop> </prop> <prop type="integer32" name="minServers"/> <prop type="string" name="path"/> <prop type="boolean" name="pickHostNameFromBackendHttpSettings"/> <prop type="boolean" name="pickHostNameFromBackendSettings"/> <prop type="integer32" name="port"> <format maximum="65535" minimum="1"/> </prop> <prop type="string" name="protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer32" name="timeout"/> <prop type="integer32" name="unhealthyThreshold"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="redirectConfigurations"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="includePath"/> <prop type="boolean" name="includeQueryString"/> <prop type="array<@SubResource_read>" name="pathRules"> <item type="@SubResource_read"/> </prop> <prop type="string" name="redirectType"> <enum> <item value="&quot;Found&quot;"/> <item value="&quot;Permanent&quot;"/> <item value="&quot;SeeOther&quot;"/> <item value="&quot;Temporary&quot;"/> </enum> </prop> <prop type="array<@SubResource_read>" name="requestRoutingRules"> <item type="@SubResource_read"/> </prop> <prop type="@SubResource_read" name="targetListener"/> <prop type="string" name="targetUrl"/> <prop type="array<@SubResource_read>" name="urlPathMaps"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="requestRoutingRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendHttpSettings"/> <prop type="@SubResource_read" name="httpListener"/> <prop type="@SubResource_read" name="loadDistributionPolicy"/> <prop type="integer32" name="priority"> <format maximum="20000" minimum="1"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="redirectConfiguration"/> <prop type="@SubResource_read" name="rewriteRuleSet"/> <prop type="string" name="ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="urlPathMap"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="resourceGuid"/> <prop type="array<object>" name="rewriteRuleSets"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="array<object>" name="rewriteRules"> <item type="object"> <prop type="object" name="actionSet"> <prop type="array<object>" name="requestHeaderConfigurations"> <item type="object" cls="ApplicationGatewayHeaderConfiguration_read"> <prop type="string" name="headerName"/> <prop type="string" name="headerValue"/> </item> </prop> <prop type="array<@ApplicationGatewayHeaderConfiguration_read>" name="responseHeaderConfigurations"> <item type="@ApplicationGatewayHeaderConfiguration_read"/> </prop> <prop type="object" name="urlConfiguration"> <prop type="string" name="modifiedPath"/> <prop type="string" name="modifiedQueryString"/> <prop type="boolean" name="reroute"/> </prop> </prop> <prop type="array<object>" name="conditions"> <item type="object"> <prop type="boolean" name="ignoreCase"/> <prop type="boolean" name="negate"/> <prop type="string" name="pattern"/> <prop type="string" name="variable"/> </item> </prop> <prop type="string" name="name"/> <prop type="integer" name="ruleSequence"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="routingRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendSettings"/> <prop type="@SubResource_read" name="listener"/> <prop type="integer32" name="priority" required="True"> <format maximum="20000" minimum="1"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="sku"> <prop type="integer32" name="capacity"/> <prop type="string" name="name"> <enum> <item value="&quot;Standard_Large&quot;"/> <item value="&quot;Standard_Medium&quot;"/> <item value="&quot;Standard_Small&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF_Large&quot;"/> <item value="&quot;WAF_Medium&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> <prop type="string" name="tier"> <enum> <item value="&quot;Standard&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop type="string" name="keyVaultSecretId"/> <prop type="string" name="password"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="publicCertData"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="sslPolicy" cls="ApplicationGatewaySslPolicy_read"> <prop type="array<string>" name="cipherSuites"> <item type="string"> <enum> <item value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </prop> <prop type="array<string>" name="disabledSslProtocols"> <item type="string"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </item> </prop> <prop type="string" name="minProtocolVersion"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </prop> <prop type="string" name="policyName"> <enum> <item value="&quot;AppGwSslPolicy20150501&quot;"/> <item value="&quot;AppGwSslPolicy20170401&quot;"/> <item value="&quot;AppGwSslPolicy20170401S&quot;"/> <item value="&quot;AppGwSslPolicy20220101&quot;"/> <item value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </prop> <prop type="string" name="policyType"> <enum> <item value="&quot;Custom&quot;"/> <item value="&quot;CustomV2&quot;"/> <item value="&quot;Predefined&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslProfiles"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="clientAuthConfiguration"> <prop type="boolean" name="verifyClientCertIssuerDN"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@ApplicationGatewaySslPolicy_read" name="sslPolicy"/> <prop type="array<@SubResource_read>" name="trustedClientCertificates"> <item type="@SubResource_read"/> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="trustedClientCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop readOnly="True" type="string" name="clientCertIssuerDN"/> <prop type="string" name="data"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="validatedCertData"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="trustedRootCertificates"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data"/> <prop type="string" name="keyVaultSecretId"/> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="array<object>" name="urlPathMaps"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="defaultBackendAddressPool"/> <prop type="@SubResource_read" name="defaultBackendHttpSettings"/> <prop type="@SubResource_read" name="defaultLoadDistributionPolicy"/> <prop type="@SubResource_read" name="defaultRedirectConfiguration"/> <prop type="@SubResource_read" name="defaultRewriteRuleSet"/> <prop type="array<object>" name="pathRules"> <item type="object"> <prop readOnly="True" type="string" name="etag"/> <prop type="string" name="id"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_read" name="backendAddressPool"/> <prop type="@SubResource_read" name="backendHttpSettings"/> <prop type="@SubResource_read" name="firewallPolicy"/> <prop type="@SubResource_read" name="loadDistributionPolicy"/> <prop type="array<string>" name="paths"> <item type="string"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="@SubResource_read" name="redirectConfiguration"/> <prop type="@SubResource_read" name="rewriteRuleSet"/> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </item> </prop> <prop type="object" name="webApplicationFirewallConfiguration"> <prop type="array<object>" name="disabledRuleGroups"> <item type="object"> <prop type="string" name="ruleGroupName" required="True"/> <prop type="array<integer32>" name="rules"> <item type="integer32"/> </prop> </item> </prop> <prop type="boolean" name="enabled" required="True"/> <prop type="array<object>" name="exclusions"> <item type="object"> <prop type="string" name="matchVariable" required="True"/> <prop type="string" name="selector" required="True"/> <prop type="string" name="selectorMatchOperator" required="True"/> </item> </prop> <prop type="integer32" name="fileUploadLimitInMb"> <format minimum="0"/> </prop> <prop type="string" name="firewallMode" required="True"> <enum> <item value="&quot;Detection&quot;"/> <item value="&quot;Prevention&quot;"/> </enum> </prop> <prop type="integer32" name="maxRequestBodySize"> <format maximum="128" minimum="8"/> </prop> <prop type="integer32" name="maxRequestBodySizeInKb"> <format maximum="128" minimum="8"/> </prop> <prop type="boolean" name="requestBodyCheck"/> <prop type="string" name="ruleSetType" required="True"/> <prop type="string" name="ruleSetVersion" required="True"/> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> <prop type="array<string>" name="zones"> <item type="string"/> </prop> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <operation> <instanceUpdate ref="$Instance"> <json> <schema type="object" name="parameters" required="True" clientFlatten="True"> <prop type="ResourceId" name="id" arg="$parameters.id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/applicationGateways/{}"/> </prop> <prop type="IdentityObject" name="identity" arg="$parameters.identity"> <prop type="string" name="type" arg="$parameters.identity.type"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;SystemAssigned&quot;"/> <item value="&quot;SystemAssigned, UserAssigned&quot;"/> <item value="&quot;UserAssigned&quot;"/> </enum> </prop> <prop type="object" name="userAssignedIdentities" arg="$parameters.identity.userAssignedIdentities"> <additionalProp> <item type="object"/> </additionalProp> </prop> </prop> <prop type="ResourceLocation" name="location" arg="$parameters.location"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="authenticationCertificates" arg="$parameters.properties.authenticationCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.authenticationCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.authenticationCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.authenticationCertificates[].properties.data"/> </prop> </item> </prop> <prop type="object" name="autoscaleConfiguration"> <prop type="integer32" name="maxCapacity" arg="$parameters.properties.autoscaleConfiguration.maxCapacity"> <format minimum="2"/> </prop> <prop type="integer32" name="minCapacity" arg="$parameters.properties.autoscaleConfiguration.minCapacity" required="True"> <format minimum="0"/> </prop> </prop> <prop type="array<object>" name="backendAddressPools" arg="$parameters.properties.backendAddressPools"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.backendAddressPools[].id"/> <prop type="string" name="name" arg="$parameters.properties.backendAddressPools[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="backendAddresses" arg="$parameters.properties.backendAddressPools[].properties.backendAddresses"> <item type="object"> <prop type="string" name="fqdn" arg="$parameters.properties.backendAddressPools[].properties.backendAddresses[].fqdn"/> <prop type="string" name="ipAddress" arg="$parameters.properties.backendAddressPools[].properties.backendAddresses[].ipAddress"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="backendHttpSettingsCollection" arg="$parameters.properties.backendHttpSettingsCollection"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.backendHttpSettingsCollection[].id"/> <prop type="string" name="name" arg="$parameters.properties.backendHttpSettingsCollection[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="affinityCookieName" arg="$parameters.properties.backendHttpSettingsCollection[].properties.affinityCookieName"/> <prop type="array<@SubResource_update>" name="authenticationCertificates" arg="$parameters.properties.backendHttpSettingsCollection[].properties.authenticationCertificates"> <item type="@SubResource_update"/> </prop> <prop type="object" name="connectionDraining" arg="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining"> <prop type="integer32" name="drainTimeoutInSec" arg="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.drainTimeoutInSec" required="True"> <format maximum="3600" minimum="1"/> </prop> <prop type="boolean" name="enabled" arg="$parameters.properties.backendHttpSettingsCollection[].properties.connectionDraining.enabled" required="True"/> </prop> <prop type="string" name="cookieBasedAffinity" arg="$parameters.properties.backendHttpSettingsCollection[].properties.cookieBasedAffinity"> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="hostName" arg="$parameters.properties.backendHttpSettingsCollection[].properties.hostName"/> <prop type="string" name="path" arg="$parameters.properties.backendHttpSettingsCollection[].properties.path"/> <prop type="boolean" name="pickHostNameFromBackendAddress" arg="$parameters.properties.backendHttpSettingsCollection[].properties.pickHostNameFromBackendAddress"/> <prop type="integer32" name="port" arg="$parameters.properties.backendHttpSettingsCollection[].properties.port"/> <prop type="@SubResource_update" name="probe" arg="$parameters.properties.backendHttpSettingsCollection[].properties.probe"/> <prop type="boolean" name="probeEnabled" arg="$parameters.properties.backendHttpSettingsCollection[].properties.probeEnabled"/> <prop type="string" name="protocol" arg="$parameters.properties.backendHttpSettingsCollection[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="integer32" name="requestTimeout" arg="$parameters.properties.backendHttpSettingsCollection[].properties.requestTimeout"/> <prop type="array<@SubResource_update>" name="trustedRootCertificates" arg="$parameters.properties.backendHttpSettingsCollection[].properties.trustedRootCertificates"> <item type="@SubResource_update"/> </prop> </prop> </item> </prop> <prop type="array<object>" name="backendSettingsCollection" arg="$parameters.properties.backendSettingsCollection"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.backendSettingsCollection[].id"/> <prop type="string" name="name" arg="$parameters.properties.backendSettingsCollection[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="hostName" arg="$parameters.properties.backendSettingsCollection[].properties.hostName"/> <prop type="boolean" name="pickHostNameFromBackendAddress" arg="$parameters.properties.backendSettingsCollection[].properties.pickHostNameFromBackendAddress"/> <prop type="integer32" name="port" arg="$parameters.properties.backendSettingsCollection[].properties.port"/> <prop type="@SubResource_update" name="probe" arg="$parameters.properties.backendSettingsCollection[].properties.probe"/> <prop type="string" name="protocol" arg="$parameters.properties.backendSettingsCollection[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="integer32" name="timeout" arg="$parameters.properties.backendSettingsCollection[].properties.timeout"/> <prop type="array<@SubResource_update>" name="trustedRootCertificates" arg="$parameters.properties.backendSettingsCollection[].properties.trustedRootCertificates"> <item type="@SubResource_update"/> </prop> </prop> </item> </prop> <prop type="array<@ApplicationGatewayCustomError_update>" name="customErrorConfigurations" arg="$parameters.properties.customErrorConfigurations"> <item type="@ApplicationGatewayCustomError_update"/> </prop> <prop type="boolean" name="enableFips" arg="$parameters.properties.enableFips"/> <prop type="boolean" name="enableHttp2" arg="$parameters.properties.enableHttp2"/> <prop type="@SubResource_update" name="firewallPolicy" arg="$parameters.properties.firewallPolicy"/> <prop type="boolean" name="forceFirewallPolicyAssociation" arg="$parameters.properties.forceFirewallPolicyAssociation"/> <prop type="array<object>" name="frontendIPConfigurations" arg="$parameters.properties.frontendIPConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.frontendIPConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.frontendIPConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="privateIPAddress" arg="$parameters.properties.frontendIPConfigurations[].properties.privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod" arg="$parameters.properties.frontendIPConfigurations[].properties.privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_update" name="privateLinkConfiguration" arg="$parameters.properties.frontendIPConfigurations[].properties.privateLinkConfiguration"/> <prop type="@SubResource_update" name="publicIPAddress" arg="$parameters.properties.frontendIPConfigurations[].properties.publicIPAddress"/> <prop type="@SubResource_update" name="subnet" arg="$parameters.properties.frontendIPConfigurations[].properties.subnet"/> </prop> </item> </prop> <prop type="array<object>" name="frontendPorts" arg="$parameters.properties.frontendPorts"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.frontendPorts[].id"/> <prop type="string" name="name" arg="$parameters.properties.frontendPorts[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="integer32" name="port" arg="$parameters.properties.frontendPorts[].properties.port"/> </prop> </item> </prop> <prop type="array<object>" name="gatewayIPConfigurations" arg="$parameters.properties.gatewayIPConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.gatewayIPConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.gatewayIPConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="subnet" arg="$parameters.properties.gatewayIPConfigurations[].properties.subnet" cls="SubResource_update"> <prop type="string" name="id" arg="@SubResource_update.id"/> </prop> </prop> </item> </prop> <prop type="object" name="globalConfiguration" arg="$parameters.properties.globalConfiguration"> <prop type="boolean" name="enableRequestBuffering" arg="$parameters.properties.globalConfiguration.enableRequestBuffering"/> <prop type="boolean" name="enableResponseBuffering" arg="$parameters.properties.globalConfiguration.enableResponseBuffering"/> </prop> <prop type="array<object>" name="httpListeners" arg="$parameters.properties.httpListeners"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.httpListeners[].id"/> <prop type="string" name="name" arg="$parameters.properties.httpListeners[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="customErrorConfigurations" arg="$parameters.properties.httpListeners[].properties.customErrorConfigurations"> <item type="object" cls="ApplicationGatewayCustomError_update"> <prop type="string" name="customErrorPageUrl" arg="@ApplicationGatewayCustomError_update.customErrorPageUrl"/> <prop type="string" name="statusCode" arg="@ApplicationGatewayCustomError_update.statusCode"> <enum> <item value="&quot;HttpStatus403&quot;"/> <item value="&quot;HttpStatus502&quot;"/> </enum> </prop> </item> </prop> <prop type="@SubResource_update" name="firewallPolicy" arg="$parameters.properties.httpListeners[].properties.firewallPolicy"/> <prop type="@SubResource_update" name="frontendIPConfiguration" arg="$parameters.properties.httpListeners[].properties.frontendIPConfiguration"/> <prop type="@SubResource_update" name="frontendPort" arg="$parameters.properties.httpListeners[].properties.frontendPort"/> <prop type="string" name="hostName" arg="$parameters.properties.httpListeners[].properties.hostName"/> <prop type="array<string>" name="hostNames" arg="$parameters.properties.httpListeners[].properties.hostNames"> <item type="string"/> </prop> <prop type="string" name="protocol" arg="$parameters.properties.httpListeners[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="boolean" name="requireServerNameIndication" arg="$parameters.properties.httpListeners[].properties.requireServerNameIndication"/> <prop type="@SubResource_update" name="sslCertificate" arg="$parameters.properties.httpListeners[].properties.sslCertificate"/> <prop type="@SubResource_update" name="sslProfile" arg="$parameters.properties.httpListeners[].properties.sslProfile"/> </prop> </item> </prop> <prop type="array<object>" name="listeners" arg="$parameters.properties.listeners"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.listeners[].id"/> <prop type="string" name="name" arg="$parameters.properties.listeners[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_update" name="frontendIPConfiguration" arg="$parameters.properties.listeners[].properties.frontendIPConfiguration"/> <prop type="@SubResource_update" name="frontendPort" arg="$parameters.properties.listeners[].properties.frontendPort"/> <prop type="string" name="protocol" arg="$parameters.properties.listeners[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="@SubResource_update" name="sslCertificate" arg="$parameters.properties.listeners[].properties.sslCertificate"/> <prop type="@SubResource_update" name="sslProfile" arg="$parameters.properties.listeners[].properties.sslProfile"/> </prop> </item> </prop> <prop type="array<object>" name="loadDistributionPolicies" arg="$parameters.properties.loadDistributionPolicies"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.loadDistributionPolicies[].id"/> <prop type="string" name="name" arg="$parameters.properties.loadDistributionPolicies[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="loadDistributionAlgorithm" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionAlgorithm"> <enum> <item value="&quot;IpHash&quot;"/> <item value="&quot;LeastConnections&quot;"/> <item value="&quot;RoundRobin&quot;"/> </enum> </prop> <prop type="array<object>" name="loadDistributionTargets" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].id"/> <prop type="string" name="name" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_update" name="backendAddressPool" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.backendAddressPool"/> <prop type="integer32" name="weightPerServer" arg="$parameters.properties.loadDistributionPolicies[].properties.loadDistributionTargets[].properties.weightPerServer"> <format maximum="100" minimum="1"/> </prop> </prop> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="privateLinkConfigurations" arg="$parameters.properties.privateLinkConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.privateLinkConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.privateLinkConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="ipConfigurations" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="primary" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.primary"/> <prop type="string" name="privateIPAddress" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAddress"/> <prop type="string" name="privateIPAllocationMethod" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.privateIPAllocationMethod"> <enum> <item value="&quot;Dynamic&quot;"/> <item value="&quot;Static&quot;"/> </enum> </prop> <prop type="@SubResource_update" name="subnet" arg="$parameters.properties.privateLinkConfigurations[].properties.ipConfigurations[].properties.subnet"/> </prop> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="probes" arg="$parameters.properties.probes"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.probes[].id"/> <prop type="string" name="name" arg="$parameters.properties.probes[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="host" arg="$parameters.properties.probes[].properties.host"/> <prop type="integer32" name="interval" arg="$parameters.properties.probes[].properties.interval"/> <prop type="object" name="match" arg="$parameters.properties.probes[].properties.match"> <prop type="string" name="body" arg="$parameters.properties.probes[].properties.match.body"/> <prop type="array<string>" name="statusCodes" arg="$parameters.properties.probes[].properties.match.statusCodes"> <item type="string"/> </prop> </prop> <prop type="integer32" name="minServers" arg="$parameters.properties.probes[].properties.minServers"/> <prop type="string" name="path" arg="$parameters.properties.probes[].properties.path"/> <prop type="boolean" name="pickHostNameFromBackendHttpSettings" arg="$parameters.properties.probes[].properties.pickHostNameFromBackendHttpSettings"/> <prop type="boolean" name="pickHostNameFromBackendSettings" arg="$parameters.properties.probes[].properties.pickHostNameFromBackendSettings"/> <prop type="integer32" name="port" arg="$parameters.properties.probes[].properties.port"> <format maximum="65535" minimum="1"/> </prop> <prop type="string" name="protocol" arg="$parameters.properties.probes[].properties.protocol"> <enum> <item value="&quot;Http&quot;"/> <item value="&quot;Https&quot;"/> <item value="&quot;Tcp&quot;"/> <item value="&quot;Tls&quot;"/> </enum> </prop> <prop type="integer32" name="timeout" arg="$parameters.properties.probes[].properties.timeout"/> <prop type="integer32" name="unhealthyThreshold" arg="$parameters.properties.probes[].properties.unhealthyThreshold"/> </prop> </item> </prop> <prop type="array<object>" name="redirectConfigurations" arg="$parameters.properties.redirectConfigurations"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.redirectConfigurations[].id"/> <prop type="string" name="name" arg="$parameters.properties.redirectConfigurations[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="boolean" name="includePath" arg="$parameters.properties.redirectConfigurations[].properties.includePath"/> <prop type="boolean" name="includeQueryString" arg="$parameters.properties.redirectConfigurations[].properties.includeQueryString"/> <prop type="array<@SubResource_update>" name="pathRules" arg="$parameters.properties.redirectConfigurations[].properties.pathRules"> <item type="@SubResource_update"/> </prop> <prop type="string" name="redirectType" arg="$parameters.properties.redirectConfigurations[].properties.redirectType"> <enum> <item value="&quot;Found&quot;"/> <item value="&quot;Permanent&quot;"/> <item value="&quot;SeeOther&quot;"/> <item value="&quot;Temporary&quot;"/> </enum> </prop> <prop type="array<@SubResource_update>" name="requestRoutingRules" arg="$parameters.properties.redirectConfigurations[].properties.requestRoutingRules"> <item type="@SubResource_update"/> </prop> <prop type="@SubResource_update" name="targetListener" arg="$parameters.properties.redirectConfigurations[].properties.targetListener"/> <prop type="string" name="targetUrl" arg="$parameters.properties.redirectConfigurations[].properties.targetUrl"/> <prop type="array<@SubResource_update>" name="urlPathMaps" arg="$parameters.properties.redirectConfigurations[].properties.urlPathMaps"> <item type="@SubResource_update"/> </prop> </prop> </item> </prop> <prop type="array<object>" name="requestRoutingRules" arg="$parameters.properties.requestRoutingRules"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.requestRoutingRules[].id"/> <prop type="string" name="name" arg="$parameters.properties.requestRoutingRules[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_update" name="backendAddressPool" arg="$parameters.properties.requestRoutingRules[].properties.backendAddressPool"/> <prop type="@SubResource_update" name="backendHttpSettings" arg="$parameters.properties.requestRoutingRules[].properties.backendHttpSettings"/> <prop type="@SubResource_update" name="httpListener" arg="$parameters.properties.requestRoutingRules[].properties.httpListener"/> <prop type="@SubResource_update" name="loadDistributionPolicy" arg="$parameters.properties.requestRoutingRules[].properties.loadDistributionPolicy"/> <prop type="integer32" name="priority" arg="$parameters.properties.requestRoutingRules[].properties.priority"> <format maximum="20000" minimum="1"/> </prop> <prop type="@SubResource_update" name="redirectConfiguration" arg="$parameters.properties.requestRoutingRules[].properties.redirectConfiguration"/> <prop type="@SubResource_update" name="rewriteRuleSet" arg="$parameters.properties.requestRoutingRules[].properties.rewriteRuleSet"/> <prop type="string" name="ruleType" arg="$parameters.properties.requestRoutingRules[].properties.ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> <prop type="@SubResource_update" name="urlPathMap" arg="$parameters.properties.requestRoutingRules[].properties.urlPathMap"/> </prop> </item> </prop> <prop type="array<object>" name="rewriteRuleSets" arg="$parameters.properties.rewriteRuleSets"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.rewriteRuleSets[].id"/> <prop type="string" name="name" arg="$parameters.properties.rewriteRuleSets[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="array<object>" name="rewriteRules" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules"> <item type="object"> <prop type="object" name="actionSet" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet"> <prop type="array<object>" name="requestHeaderConfigurations" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.requestHeaderConfigurations"> <item type="object" cls="ApplicationGatewayHeaderConfiguration_update"> <prop type="string" name="headerName" arg="@ApplicationGatewayHeaderConfiguration_update.headerName"/> <prop type="string" name="headerValue" arg="@ApplicationGatewayHeaderConfiguration_update.headerValue"/> </item> </prop> <prop type="array<@ApplicationGatewayHeaderConfiguration_update>" name="responseHeaderConfigurations" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.responseHeaderConfigurations"> <item type="@ApplicationGatewayHeaderConfiguration_update"/> </prop> <prop type="object" name="urlConfiguration" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration"> <prop type="string" name="modifiedPath" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedPath"/> <prop type="string" name="modifiedQueryString" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.modifiedQueryString"/> <prop type="boolean" name="reroute" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].actionSet.urlConfiguration.reroute"/> </prop> </prop> <prop type="array<object>" name="conditions" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions"> <item type="object"> <prop type="boolean" name="ignoreCase" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].ignoreCase"/> <prop type="boolean" name="negate" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].negate"/> <prop type="string" name="pattern" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].pattern"/> <prop type="string" name="variable" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].conditions[].variable"/> </item> </prop> <prop type="string" name="name" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].name"/> <prop type="integer" name="ruleSequence" arg="$parameters.properties.rewriteRuleSets[].properties.rewriteRules[].ruleSequence"/> </item> </prop> </prop> </item> </prop> <prop type="array<object>" name="routingRules" arg="$parameters.properties.routingRules"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.routingRules[].id"/> <prop type="string" name="name" arg="$parameters.properties.routingRules[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_update" name="backendAddressPool" arg="$parameters.properties.routingRules[].properties.backendAddressPool"/> <prop type="@SubResource_update" name="backendSettings" arg="$parameters.properties.routingRules[].properties.backendSettings"/> <prop type="@SubResource_update" name="listener" arg="$parameters.properties.routingRules[].properties.listener"/> <prop type="integer32" name="priority" arg="$parameters.properties.routingRules[].properties.priority" required="True"> <format maximum="20000" minimum="1"/> </prop> <prop type="string" name="ruleType" arg="$parameters.properties.routingRules[].properties.ruleType"> <enum> <item value="&quot;Basic&quot;"/> <item value="&quot;PathBasedRouting&quot;"/> </enum> </prop> </prop> </item> </prop> <prop type="object" name="sku"> <prop type="integer32" name="capacity" arg="$parameters.properties.sku.capacity"/> <prop type="string" name="name" arg="$parameters.properties.sku.name"> <enum> <item value="&quot;Standard_Large&quot;"/> <item value="&quot;Standard_Medium&quot;"/> <item value="&quot;Standard_Small&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF_Large&quot;"/> <item value="&quot;WAF_Medium&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> <prop type="string" name="tier" arg="$parameters.properties.sku.tier"> <enum> <item value="&quot;Standard&quot;"/> <item value="&quot;Standard_v2&quot;"/> <item value="&quot;WAF&quot;"/> <item value="&quot;WAF_v2&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslCertificates" arg="$parameters.properties.sslCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.sslCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.sslCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.sslCertificates[].properties.data"/> <prop type="string" name="keyVaultSecretId" arg="$parameters.properties.sslCertificates[].properties.keyVaultSecretId"/> <prop type="string" name="password" arg="$parameters.properties.sslCertificates[].properties.password"/> </prop> </item> </prop> <prop type="object" name="sslPolicy" arg="$parameters.properties.sslPolicy" cls="ApplicationGatewaySslPolicy_update"> <prop type="array<string>" name="cipherSuites" arg="@ApplicationGatewaySslPolicy_update.cipherSuites"> <item type="string"> <enum> <item value="&quot;TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_DSS_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384&quot;"/> <item value="&quot;TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384&quot;"/> <item value="&quot;TLS_RSA_WITH_3DES_EDE_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_128_GCM_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_CBC_SHA256&quot;"/> <item value="&quot;TLS_RSA_WITH_AES_256_GCM_SHA384&quot;"/> </enum> </item> </prop> <prop type="array<string>" name="disabledSslProtocols" arg="@ApplicationGatewaySslPolicy_update.disabledSslProtocols"> <item type="string"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </item> </prop> <prop type="string" name="minProtocolVersion" arg="@ApplicationGatewaySslPolicy_update.minProtocolVersion"> <enum> <item value="&quot;TLSv1_0&quot;"/> <item value="&quot;TLSv1_1&quot;"/> <item value="&quot;TLSv1_2&quot;"/> <item value="&quot;TLSv1_3&quot;"/> </enum> </prop> <prop type="string" name="policyName" arg="@ApplicationGatewaySslPolicy_update.policyName"> <enum> <item value="&quot;AppGwSslPolicy20150501&quot;"/> <item value="&quot;AppGwSslPolicy20170401&quot;"/> <item value="&quot;AppGwSslPolicy20170401S&quot;"/> <item value="&quot;AppGwSslPolicy20220101&quot;"/> <item value="&quot;AppGwSslPolicy20220101S&quot;"/> </enum> </prop> <prop type="string" name="policyType" arg="@ApplicationGatewaySslPolicy_update.policyType"> <enum> <item value="&quot;Custom&quot;"/> <item value="&quot;CustomV2&quot;"/> <item value="&quot;Predefined&quot;"/> </enum> </prop> </prop> <prop type="array<object>" name="sslProfiles" arg="$parameters.properties.sslProfiles"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.sslProfiles[].id"/> <prop type="string" name="name" arg="$parameters.properties.sslProfiles[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="clientAuthConfiguration" arg="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration"> <prop type="boolean" name="verifyClientCertIssuerDN" arg="$parameters.properties.sslProfiles[].properties.clientAuthConfiguration.verifyClientCertIssuerDN"/> </prop> <prop type="@ApplicationGatewaySslPolicy_update" name="sslPolicy" arg="$parameters.properties.sslProfiles[].properties.sslPolicy"/> <prop type="array<@SubResource_update>" name="trustedClientCertificates" arg="$parameters.properties.sslProfiles[].properties.trustedClientCertificates"> <item type="@SubResource_update"/> </prop> </prop> </item> </prop> <prop type="array<object>" name="trustedClientCertificates" arg="$parameters.properties.trustedClientCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.trustedClientCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.trustedClientCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.trustedClientCertificates[].properties.data"/> </prop> </item> </prop> <prop type="array<object>" name="trustedRootCertificates" arg="$parameters.properties.trustedRootCertificates"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.trustedRootCertificates[].id"/> <prop type="string" name="name" arg="$parameters.properties.trustedRootCertificates[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="string" name="data" arg="$parameters.properties.trustedRootCertificates[].properties.data"/> <prop type="string" name="keyVaultSecretId" arg="$parameters.properties.trustedRootCertificates[].properties.keyVaultSecretId"/> </prop> </item> </prop> <prop type="array<object>" name="urlPathMaps" arg="$parameters.properties.urlPathMaps"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.urlPathMaps[].id"/> <prop type="string" name="name" arg="$parameters.properties.urlPathMaps[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_update" name="defaultBackendAddressPool" arg="$parameters.properties.urlPathMaps[].properties.defaultBackendAddressPool"/> <prop type="@SubResource_update" name="defaultBackendHttpSettings" arg="$parameters.properties.urlPathMaps[].properties.defaultBackendHttpSettings"/> <prop type="@SubResource_update" name="defaultLoadDistributionPolicy" arg="$parameters.properties.urlPathMaps[].properties.defaultLoadDistributionPolicy"/> <prop type="@SubResource_update" name="defaultRedirectConfiguration" arg="$parameters.properties.urlPathMaps[].properties.defaultRedirectConfiguration"/> <prop type="@SubResource_update" name="defaultRewriteRuleSet" arg="$parameters.properties.urlPathMaps[].properties.defaultRewriteRuleSet"/> <prop type="array<object>" name="pathRules" arg="$parameters.properties.urlPathMaps[].properties.pathRules"> <item type="object"> <prop type="string" name="id" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].id"/> <prop type="string" name="name" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@SubResource_update" name="backendAddressPool" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendAddressPool"/> <prop type="@SubResource_update" name="backendHttpSettings" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.backendHttpSettings"/> <prop type="@SubResource_update" name="firewallPolicy" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.firewallPolicy"/> <prop type="@SubResource_update" name="loadDistributionPolicy" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.loadDistributionPolicy"/> <prop type="array<string>" name="paths" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.paths"> <item type="string"/> </prop> <prop type="@SubResource_update" name="redirectConfiguration" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.redirectConfiguration"/> <prop type="@SubResource_update" name="rewriteRuleSet" arg="$parameters.properties.urlPathMaps[].properties.pathRules[].properties.rewriteRuleSet"/> </prop> </item> </prop> </prop> </item> </prop> <prop type="object" name="webApplicationFirewallConfiguration" arg="$parameters.properties.webApplicationFirewallConfiguration"> <prop type="array<object>" name="disabledRuleGroups" arg="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups"> <item type="object"> <prop type="string" name="ruleGroupName" arg="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].ruleGroupName" required="True"/> <prop type="array<integer32>" name="rules" arg="$parameters.properties.webApplicationFirewallConfiguration.disabledRuleGroups[].rules"> <item type="integer32"/> </prop> </item> </prop> <prop type="boolean" name="enabled" arg="$parameters.properties.webApplicationFirewallConfiguration.enabled" required="True"/> <prop type="array<object>" name="exclusions" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions"> <item type="object"> <prop type="string" name="matchVariable" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].matchVariable" required="True"/> <prop type="string" name="selector" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selector" required="True"/> <prop type="string" name="selectorMatchOperator" arg="$parameters.properties.webApplicationFirewallConfiguration.exclusions[].selectorMatchOperator" required="True"/> </item> </prop> <prop type="integer32" name="fileUploadLimitInMb" arg="$parameters.properties.webApplicationFirewallConfiguration.fileUploadLimitInMb"> <format minimum="0"/> </prop> <prop type="string" name="firewallMode" arg="$parameters.properties.webApplicationFirewallConfiguration.firewallMode" required="True"> <enum> <item value="&quot;Detection&quot;"/> <item value="&quot;Prevention&quot;"/> </enum> </prop> <prop type="integer32" name="maxRequestBodySize" arg="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySize"> <format maximum="128" minimum="8"/> </prop> <prop type="integer32" name="maxRequestBodySizeInKb" arg="$parameters.properties.webApplicationFirewallConfiguration.maxRequestBodySizeInKb"> <format maximum="128" minimum="8"/> </prop> <prop type="boolean" name="requestBodyCheck" arg="$parameters.properties.webApplicationFirewallConfiguration.requestBodyCheck"/> <prop type="string" name="ruleSetType" arg="$parameters.properties.webApplicationFirewallConfiguration.ruleSetType" required="True"/> <prop type="string" name="ruleSetVersion" arg="$parameters.properties.webApplicationFirewallConfiguration.ruleSetVersion" required="True"/> </prop> </prop> <prop type="object" name="tags" arg="$parameters.tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop type="array<string>" name="zones" arg="$parameters.zones"> <item type="string"/> </prop> </schema> </json> </instanceUpdate> </operation> <operation operationId="ApplicationGateways_CreateOrUpdate"> <longRunning finalStateVia="azure-async-operation"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}"> <request method="put"> <path> <param type="string" name="applicationGatewayName" arg="$Path.applicationGatewayName" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2022-01-01&quot;"/> </const> </query> <body> <json ref="$Instance"/> </body> </request> <response statusCode="200 201"> <body> <json var="$Instance"> <schema type="@ApplicationGateway_read"/> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> </commandGroup> </CodeGen>