diff --git a/Commands/network/firewall/policy/rule-collection-group/collection/_list.md b/Commands/network/firewall/policy/rule-collection-group/collection/_list.md index aeb618633..a0e4df418 100644 --- a/Commands/network/firewall/policy/rule-collection-group/collection/_list.md +++ b/Commands/network/firewall/policy/rule-collection-group/collection/_list.md @@ -1,6 +1,6 @@ # [Command] _network firewall policy rule-collection-group collection list_ -None +List all rule collections of an Azure firewall policy rule collection group. ## Versions diff --git a/Commands/network/firewall/policy/rule-collection-group/collection/readme.md b/Commands/network/firewall/policy/rule-collection-group/collection/readme.md index 165eb7490..80034407c 100644 --- a/Commands/network/firewall/policy/rule-collection-group/collection/readme.md +++ b/Commands/network/firewall/policy/rule-collection-group/collection/readme.md @@ -14,7 +14,7 @@ Currently, Azure Firewall policy support two kinds of rule collections which are : None - [list](/Commands/network/firewall/policy/rule-collection-group/collection/_list.md) -: None +: List all rule collections of an Azure firewall policy rule collection group. - [show](/Commands/network/firewall/policy/rule-collection-group/collection/_show.md) : None diff --git a/Commands/tree.json b/Commands/tree.json index 1bcd3827b..23c3fb590 100644 --- a/Commands/tree.json +++ b/Commands/tree.json @@ -35592,7 +35592,7 @@ }, "list": { "help": { - "short": "None" + "short": "List all rule collections of an Azure firewall policy rule collection group." }, "names": [ "network", diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.json b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.json index 28f27d821..3748a5111 100644 --- a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.json +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.json @@ -1 +1 @@ -{"plane": "mgmt-plane", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "commandGroups": [{"name": "network firewall policy rule-collection-group", "commands": [{"name": "show", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "delete", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "operations": [{"longRunning": {"finalStateVia": "location"}, "operationId": "FirewallPolicyRuleCollectionGroups_Delete", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "delete", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200]}, {"statusCode": [202]}, {"statusCode": [204]}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "confirmation": "Are you sure you want to perform this operation?"}, {"name": "create", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}, {"name": "Parameters", "args": [{"type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}]}, {"name": "Properties", "args": [{"type": "integer32", "var": "$parameters.properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority of the Firewall Policy Rule Collection Group"}, "format": {"maximum": 65000, "minimum": 100}}, {"type": "array", "var": "$parameters.properties.ruleCollections", "options": ["rule-collections"], "group": "Properties", "help": {"short": "Group of Firewall Policy rule collections."}, "item": {"type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Filter rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_create>", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "@FirewallPolicyRule_create"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "object", "args": [{"type": "object", "var": "@FirewallPolicyRule_create.ApplicationRule", "options": ["application-rule"], "args": [{"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "help": {"short": "List of FQDN Tags for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.protocols", "options": ["protocols"], "help": {"short": "Array of Application Protocols."}, "item": {"type": "object", "args": [{"type": "integer32", "var": "@FirewallPolicyRule_create.ApplicationRule.protocols[].port", "options": ["port"], "help": {"short": "Port number for the protocol, cannot be greater than 64000."}, "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "var": "@FirewallPolicyRule_create.ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "help": {"short": "Protocol type."}, "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.targetFqdns", "options": ["target-fqdns"], "help": {"short": "List of FQDNs for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.targetUrls", "options": ["target-urls"], "help": {"short": "List of Urls for this rule condition."}, "item": {"type": "string"}}, {"type": "boolean", "var": "@FirewallPolicyRule_create.ApplicationRule.terminateTLS", "options": ["terminate-tls"], "help": {"short": "Terminate TLS connections for this rule."}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.webCategories", "options": ["web-categories"], "help": {"short": "List of destination azure web categories."}, "item": {"type": "string"}}]}, {"type": "object", "var": "@FirewallPolicyRule_create.NatRule", "options": ["nat-rule"], "args": [{"type": "array", "var": "@FirewallPolicyRule_create.NatRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.destinationPorts", "options": ["destination-ports"], "help": {"short": "List of destination ports."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.ipProtocols", "options": ["ip-protocols"], "help": {"short": "Array of FirewallPolicyRuleNetworkProtocols."}, "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"type": "string"}}, {"type": "string", "var": "@FirewallPolicyRule_create.NatRule.translatedAddress", "options": ["translated-address"], "help": {"short": "The translated address for this NAT rule."}}, {"type": "string", "var": "@FirewallPolicyRule_create.NatRule.translatedFqdn", "options": ["translated-fqdn"], "help": {"short": "The translated FQDN for this NAT rule."}}, {"type": "string", "var": "@FirewallPolicyRule_create.NatRule.translatedPort", "options": ["translated-port"], "help": {"short": "The translated port for this NAT rule."}}]}, {"type": "object", "var": "@FirewallPolicyRule_create.NetworkRule", "options": ["network-rule"], "args": [{"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "help": {"short": "List of destination FQDNs."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "help": {"short": "List of destination IpGroups for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationPorts", "options": ["destination-ports"], "help": {"short": "List of destination ports."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.ipProtocols", "options": ["ip-protocols"], "help": {"short": "Array of FirewallPolicyRuleNetworkProtocols."}, "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"type": "string"}}]}, {"type": "string", "var": "@FirewallPolicyRule_create.description", "options": ["description"], "help": {"short": "Description of the rule."}}, {"type": "string", "var": "@FirewallPolicyRule_create.name", "options": ["name"], "help": {"short": "Name of the rule."}}], "cls": "FirewallPolicyRule_create"}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["name"], "help": {"short": "The name of the rule collection."}}, {"type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}}]}], "operations": [{"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name", "arg": "$Path.ruleCollectionGroupName"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "arg": "$parameters.properties.priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "array", "name": "ruleCollections", "arg": "$parameters.properties.ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_create>", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "@FirewallPolicyRule_create"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "@FirewallPolicyRule_create.description"}, {"type": "string", "name": "name", "arg": "@FirewallPolicyRule_create.name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "@FirewallPolicyRule_create.ApplicationRule", "value": "ApplicationRule"}, {"arg": "@FirewallPolicyRule_create.NatRule", "value": "NatRule"}, {"arg": "@FirewallPolicyRule_create.NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_create.ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "@FirewallPolicyRule_create.ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "@FirewallPolicyRule_create.ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "@FirewallPolicyRule_create.ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "@FirewallPolicyRule_create.ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_create.ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_create.ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "@FirewallPolicyRule_create.ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "@FirewallPolicyRule_create.ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "@FirewallPolicyRule_create.ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "@FirewallPolicyRule_create.ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_create.NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "@FirewallPolicyRule_create.NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "@FirewallPolicyRule_create.NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_create.NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_create.NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "@FirewallPolicyRule_create.NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "@FirewallPolicyRule_create.NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "@FirewallPolicyRule_create.NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "@FirewallPolicyRule_create.NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_create.NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_create.NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_create"}}]}]}}], "clientFlatten": true}], "clientFlatten": true}}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "update", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}, {"name": "Parameters", "args": [{"nullable": true, "type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}]}, {"name": "Properties", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority of the Firewall Policy Rule Collection Group"}, "format": {"maximum": 65000, "minimum": 100}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections", "options": ["rule-collections"], "group": "Properties", "help": {"short": "Group of Firewall Policy rule collections."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Filter rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description", "options": ["description"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description", "options": ["description"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["collection-name"], "group": "", "help": {"short": "The name of the rule collection."}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}}]}], "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Instance", "json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name", "arg": "$Path.ruleCollectionGroupName"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "arg": "$parameters.properties.priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "array", "name": "ruleCollections", "arg": "$parameters.properties.ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}]}}], "clientFlatten": true}], "clientFlatten": true}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}], "commandGroups": [{"name": "collection", "commands": [{"name": "list", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections"}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "array", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}, {"name": "create", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"]}]}, {"name": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "group": "FirewallPolicyFilterRuleCollection", "help": {"short": "The action type of a Filter rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "group": "FirewallPolicyFilterRuleCollection", "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"type": "object", "args": [{"type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"type": "string"}}, {"type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description", "options": ["description"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"type": "object", "args": [{"type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"type": "string"}}, {"type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description", "options": ["description"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["collection-name"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "The name of the rule collection."}}, {"type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]"}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceCreate": {"ref": "$Subresource", "json": {"schema": {"type": "object", "name": "parameters.properties.ruleCollections[]", "required": true, "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}]}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}, {"name": "update", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"], "required": true}]}, {"name": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Filter rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description", "options": ["description"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description", "options": ["description"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["collection-name"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "The name of the rule collection."}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]", "required": true}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Subresource", "json": {"schema": {"type": "object", "name": "parameters.properties.ruleCollections[]", "required": true, "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}]}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}, {"name": "delete", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"], "required": true}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]", "required": true}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceDelete": {"ref": "$Subresource", "json": {}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "confirmation": "Are you sure you want to perform this operation?"}, {"name": "show", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"], "required": true}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]", "required": true}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}]}]}]} \ No newline at end of file +{"plane": "mgmt-plane", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "commandGroups": [{"name": "network firewall policy rule-collection-group", "commands": [{"name": "show", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "delete", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "operations": [{"longRunning": {"finalStateVia": "location"}, "operationId": "FirewallPolicyRuleCollectionGroups_Delete", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "delete", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200]}, {"statusCode": [202]}, {"statusCode": [204]}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "confirmation": "Are you sure you want to perform this operation?"}, {"name": "create", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}, {"name": "Parameters", "args": [{"type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}]}, {"name": "Properties", "args": [{"type": "integer32", "var": "$parameters.properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority of the Firewall Policy Rule Collection Group"}, "format": {"maximum": 65000, "minimum": 100}}, {"type": "array", "var": "$parameters.properties.ruleCollections", "options": ["rule-collections"], "group": "Properties", "help": {"short": "Group of Firewall Policy rule collections."}, "item": {"type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Filter rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_create>", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "@FirewallPolicyRule_create"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "object", "args": [{"type": "object", "var": "@FirewallPolicyRule_create.ApplicationRule", "options": ["application-rule"], "args": [{"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "help": {"short": "List of FQDN Tags for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.protocols", "options": ["protocols"], "help": {"short": "Array of Application Protocols."}, "item": {"type": "object", "args": [{"type": "integer32", "var": "@FirewallPolicyRule_create.ApplicationRule.protocols[].port", "options": ["port"], "help": {"short": "Port number for the protocol, cannot be greater than 64000."}, "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "var": "@FirewallPolicyRule_create.ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "help": {"short": "Protocol type."}, "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.targetFqdns", "options": ["target-fqdns"], "help": {"short": "List of FQDNs for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.targetUrls", "options": ["target-urls"], "help": {"short": "List of Urls for this rule condition."}, "item": {"type": "string"}}, {"type": "boolean", "var": "@FirewallPolicyRule_create.ApplicationRule.terminateTLS", "options": ["terminate-tls"], "help": {"short": "Terminate TLS connections for this rule."}}, {"type": "array", "var": "@FirewallPolicyRule_create.ApplicationRule.webCategories", "options": ["web-categories"], "help": {"short": "List of destination azure web categories."}, "item": {"type": "string"}}]}, {"type": "object", "var": "@FirewallPolicyRule_create.NatRule", "options": ["nat-rule"], "args": [{"type": "array", "var": "@FirewallPolicyRule_create.NatRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.destinationPorts", "options": ["destination-ports"], "help": {"short": "List of destination ports."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.ipProtocols", "options": ["ip-protocols"], "help": {"short": "Array of FirewallPolicyRuleNetworkProtocols."}, "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NatRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"type": "string"}}, {"type": "string", "var": "@FirewallPolicyRule_create.NatRule.translatedAddress", "options": ["translated-address"], "help": {"short": "The translated address for this NAT rule."}}, {"type": "string", "var": "@FirewallPolicyRule_create.NatRule.translatedFqdn", "options": ["translated-fqdn"], "help": {"short": "The translated FQDN for this NAT rule."}}, {"type": "string", "var": "@FirewallPolicyRule_create.NatRule.translatedPort", "options": ["translated-port"], "help": {"short": "The translated port for this NAT rule."}}]}, {"type": "object", "var": "@FirewallPolicyRule_create.NetworkRule", "options": ["network-rule"], "args": [{"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "help": {"short": "List of destination FQDNs."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "help": {"short": "List of destination IpGroups for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.destinationPorts", "options": ["destination-ports"], "help": {"short": "List of destination ports."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.ipProtocols", "options": ["ip-protocols"], "help": {"short": "Array of FirewallPolicyRuleNetworkProtocols."}, "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"type": "string"}}, {"type": "array", "var": "@FirewallPolicyRule_create.NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"type": "string"}}]}, {"type": "string", "var": "@FirewallPolicyRule_create.description", "options": ["description"], "help": {"short": "Description of the rule."}}, {"type": "string", "var": "@FirewallPolicyRule_create.name", "options": ["name"], "help": {"short": "Name of the rule."}}], "cls": "FirewallPolicyRule_create"}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["name"], "help": {"short": "The name of the rule collection."}}, {"type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}}]}], "operations": [{"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name", "arg": "$Path.ruleCollectionGroupName"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "arg": "$parameters.properties.priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "array", "name": "ruleCollections", "arg": "$parameters.properties.ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_create>", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "@FirewallPolicyRule_create"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "@FirewallPolicyRule_create.description"}, {"type": "string", "name": "name", "arg": "@FirewallPolicyRule_create.name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "@FirewallPolicyRule_create.ApplicationRule", "value": "ApplicationRule"}, {"arg": "@FirewallPolicyRule_create.NatRule", "value": "NatRule"}, {"arg": "@FirewallPolicyRule_create.NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_create.ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "@FirewallPolicyRule_create.ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "@FirewallPolicyRule_create.ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "@FirewallPolicyRule_create.ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "@FirewallPolicyRule_create.ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_create.ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_create.ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "@FirewallPolicyRule_create.ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "@FirewallPolicyRule_create.ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "@FirewallPolicyRule_create.ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "@FirewallPolicyRule_create.ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_create.NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "@FirewallPolicyRule_create.NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "@FirewallPolicyRule_create.NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_create.NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_create.NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "@FirewallPolicyRule_create.NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "@FirewallPolicyRule_create.NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "@FirewallPolicyRule_create.NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "@FirewallPolicyRule_create.NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "@FirewallPolicyRule_create.NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_create.NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_create.NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_create"}}]}]}}], "clientFlatten": true}], "clientFlatten": true}}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "update", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["n", "name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}, {"name": "Parameters", "args": [{"nullable": true, "type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}]}, {"name": "Properties", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority of the Firewall Policy Rule Collection Group"}, "format": {"maximum": 65000, "minimum": 100}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections", "options": ["rule-collections"], "group": "Properties", "help": {"short": "Group of Firewall Policy rule collections."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Filter rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"nullable": true, "type": "array<@FirewallPolicyRule_update>", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "@FirewallPolicyRule_update"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "@FirewallPolicyRule_update.ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "help": {"short": "List of FQDN Tags for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.protocols", "options": ["protocols"], "help": {"short": "Array of Application Protocols."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "@FirewallPolicyRule_update.ApplicationRule.protocols[].port", "options": ["port"], "help": {"short": "Port number for the protocol, cannot be greater than 64000."}, "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "@FirewallPolicyRule_update.ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "help": {"short": "Protocol type."}, "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.targetFqdns", "options": ["target-fqdns"], "help": {"short": "List of FQDNs for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.targetUrls", "options": ["target-urls"], "help": {"short": "List of Urls for this rule condition."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "@FirewallPolicyRule_update.ApplicationRule.terminateTLS", "options": ["terminate-tls"], "help": {"short": "Terminate TLS connections for this rule."}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.ApplicationRule.webCategories", "options": ["web-categories"], "help": {"short": "List of destination azure web categories."}, "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "@FirewallPolicyRule_update.NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NatRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NatRule.destinationPorts", "options": ["destination-ports"], "help": {"short": "List of destination ports."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NatRule.ipProtocols", "options": ["ip-protocols"], "help": {"short": "Array of FirewallPolicyRuleNetworkProtocols."}, "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NatRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NatRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "@FirewallPolicyRule_update.NatRule.translatedAddress", "options": ["translated-address"], "help": {"short": "The translated address for this NAT rule."}}, {"nullable": true, "type": "string", "var": "@FirewallPolicyRule_update.NatRule.translatedFqdn", "options": ["translated-fqdn"], "help": {"short": "The translated FQDN for this NAT rule."}}, {"nullable": true, "type": "string", "var": "@FirewallPolicyRule_update.NatRule.translatedPort", "options": ["translated-port"], "help": {"short": "The translated port for this NAT rule."}}]}, {"type": "object", "var": "@FirewallPolicyRule_update.NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.destinationAddresses", "options": ["destination-addresses"], "help": {"short": "List of destination IP addresses or Service Tags."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "help": {"short": "List of destination FQDNs."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "help": {"short": "List of destination IpGroups for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.destinationPorts", "options": ["destination-ports"], "help": {"short": "List of destination ports."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.ipProtocols", "options": ["ip-protocols"], "help": {"short": "Array of FirewallPolicyRuleNetworkProtocols."}, "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.sourceAddresses", "options": ["source-addresses"], "help": {"short": "List of source IP addresses for this rule."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@FirewallPolicyRule_update.NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "help": {"short": "List of source IpGroups for this rule."}, "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "@FirewallPolicyRule_update.description", "options": ["description"], "help": {"short": "Description of the rule."}}, {"nullable": true, "type": "string", "var": "@FirewallPolicyRule_update.name", "options": ["name"], "help": {"short": "Name of the rule."}}], "cls": "FirewallPolicyRule_update"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["collection-name"], "group": "", "help": {"short": "The name of the rule collection."}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}}]}], "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Instance", "json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name", "arg": "$Path.ruleCollectionGroupName"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "arg": "$parameters.properties.priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "array", "name": "ruleCollections", "arg": "$parameters.properties.ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_update>", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "@FirewallPolicyRule_update"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "@FirewallPolicyRule_update.description"}, {"type": "string", "name": "name", "arg": "@FirewallPolicyRule_update.name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "@FirewallPolicyRule_update.ApplicationRule", "value": "ApplicationRule"}, {"arg": "@FirewallPolicyRule_update.NatRule", "value": "NatRule"}, {"arg": "@FirewallPolicyRule_update.NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_update.ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "@FirewallPolicyRule_update.ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "@FirewallPolicyRule_update.ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "@FirewallPolicyRule_update.ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "@FirewallPolicyRule_update.ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_update.ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_update.ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "@FirewallPolicyRule_update.ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "@FirewallPolicyRule_update.ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "@FirewallPolicyRule_update.ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "@FirewallPolicyRule_update.ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_update.NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "@FirewallPolicyRule_update.NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "@FirewallPolicyRule_update.NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_update.NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_update.NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "@FirewallPolicyRule_update.NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "@FirewallPolicyRule_update.NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "@FirewallPolicyRule_update.NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "@FirewallPolicyRule_update.NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "@FirewallPolicyRule_update.NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "@FirewallPolicyRule_update.NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "@FirewallPolicyRule_update.NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "@FirewallPolicyRule_update.NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "@FirewallPolicyRule_update.NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "@FirewallPolicyRule_update.NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_update"}}]}]}}], "clientFlatten": true}], "clientFlatten": true}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}], "commandGroups": [{"name": "collection", "commands": [{"name": "list", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections"}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "array", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}, {"name": "create", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"]}]}, {"name": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "group": "FirewallPolicyFilterRuleCollection", "help": {"short": "The action type of a Filter rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "group": "FirewallPolicyFilterRuleCollection", "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"type": "object", "args": [{"type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"type": "string"}}, {"type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description", "options": ["description"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"type": "object", "args": [{"type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"type": "string"}}, {"type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"type": "string"}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description", "options": ["description"]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["collection-name"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "The name of the rule collection."}}, {"type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]"}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceCreate": {"ref": "$Subresource", "json": {"schema": {"type": "object", "name": "parameters.properties.ruleCollections[]", "required": true, "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}]}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}, {"name": "update", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"], "required": true}]}, {"name": "Parameters.properties.ruleCollections[]", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "options": ["firewall-policy-filter-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Filter rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "Allow", "value": "Allow"}, {"name": "Deny", "value": "Deny"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description", "options": ["description"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "options": ["firewall-policy-nat-rule-collection"], "group": "Parameters.properties.ruleCollections[]", "args": [{"nullable": true, "type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "options": ["action"], "help": {"short": "The action type of a Nat rule collection."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "options": ["type"], "help": {"short": "The type of action."}, "enum": {"items": [{"name": "DNAT", "value": "DNAT"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "options": ["rules"], "help": {"short": "List of rules included in a rule collection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "options": ["application-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "options": ["fqdn-tags"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "options": ["protocols"], "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "options": ["port"], "format": {"maximum": 64000, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "options": ["protocol-type"], "enum": {"items": [{"name": "Http", "value": "Http"}, {"name": "Https", "value": "Https"}]}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "options": ["target-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "options": ["target-urls"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS", "options": ["terminate-tls"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "options": ["web-categories"], "item": {"nullable": true, "type": "string"}}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "options": ["nat-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress", "options": ["translated-address"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn", "options": ["translated-fqdn"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort", "options": ["translated-port"]}]}, {"type": "object", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "options": ["network-rule"], "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "options": ["destination-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "options": ["destination-fqdns"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "options": ["destination-ip-groups"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "options": ["destination-ports"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "options": ["ip-protocols"], "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "Any", "value": "Any"}, {"name": "ICMP", "value": "ICMP"}, {"name": "TCP", "value": "TCP"}, {"name": "UDP", "value": "UDP"}]}}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "options": ["source-addresses"], "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "options": ["source-ip-groups"], "item": {"nullable": true, "type": "string"}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description", "options": ["description"]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name", "options": ["name"]}]}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.ruleCollections[].name", "options": ["collection-name"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "The name of the rule collection."}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.ruleCollections[].priority", "options": ["priority"], "group": "Parameters.properties.ruleCollections[]", "help": {"short": "Priority of the Firewall Policy Rule Collection resource."}, "format": {"maximum": 65000, "minimum": 100}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]", "required": true}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Subresource", "json": {"schema": {"type": "object", "name": "parameters.properties.ruleCollections[]", "required": true, "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].name"}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.ruleCollections[].priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection", "value": "FirewallPolicyFilterRuleCollection"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection", "value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.action.type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyFilterRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action", "props": [{"type": "string", "name": "type", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.action.type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules", "item": {"type": "object", "props": [{"type": "string", "name": "description", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].description"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule", "value": "ApplicationRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule", "value": "NatRule"}, {"arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule", "value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.protocols[].protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.terminateTLS"}, {"type": "array", "name": "webCategories", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].ApplicationRule.webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedAddress"}, {"type": "string", "name": "translatedFqdn", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedFqdn"}, {"type": "string", "name": "translatedPort", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NatRule.translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "arg": "$parameters.properties.ruleCollections[].FirewallPolicyNatRuleCollection.rules[].NetworkRule.sourceIpGroups", "item": {"type": "string"}}]}]}}]}]}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}, {"name": "delete", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"], "required": true}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]", "required": true}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceDelete": {"ref": "$Subresource", "json": {}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "confirmation": "Are you sure you want to perform this operation?"}, {"name": "show", "version": "2022-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/firewallpolicies/{}/rulecollectiongroups/{}", "version": "2022-01-01", "subresource": "properties.ruleCollections[]", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9maXJld2FsbFBvbGljaWVzL3tmaXJld2FsbFBvbGljeU5hbWV9L3J1bGVDb2xsZWN0aW9uR3JvdXBzL3tydWxlQ29sbGVjdGlvbkdyb3VwTmFtZX0=/V/MjAyMi0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "string", "var": "$Path.firewallPolicyName", "options": ["policy-name"], "required": true, "group": "", "idPart": "name", "help": {"short": "The name of the Firewall Policy."}}, {"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "string", "var": "$Path.ruleCollectionGroupName", "options": ["rcg-name", "rule-collection-group-name"], "required": true, "group": "", "idPart": "child_name_1", "help": {"short": "The name of the Firewall Policy Rule Collection Group."}}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "integer", "var": "$parameters.properties.ruleCollections[Index]", "options": ["rule-collection-index"], "required": true}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "array", "name": "properties.ruleCollections", "item": {"type": "object"}, "identifiers": [{"type": "integer", "name": "[Index]", "arg": "$parameters.properties.ruleCollections[Index]", "required": true}]}}}, "operations": [{"operationId": "FirewallPolicyRuleCollectionGroups_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "firewallPolicyName", "arg": "$Path.firewallPolicyName", "required": true}, {"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "ruleCollectionGroupName", "arg": "$Path.ruleCollectionGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2022-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/firewallPolicies/{}/ruleCollectionGroups/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array", "name": "ruleCollections", "item": {"type": "object", "props": [{"type": "string", "name": "name"}, {"type": "integer32", "name": "priority", "format": {"maximum": 65000, "minimum": 100}}, {"type": "string", "name": "ruleCollectionType", "required": true, "enum": {"items": [{"value": "FirewallPolicyFilterRuleCollection"}, {"value": "FirewallPolicyNatRuleCollection"}]}}], "discriminators": [{"property": "ruleCollectionType", "value": "FirewallPolicyFilterRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "Allow"}, {"value": "Deny"}]}}]}, {"type": "array<@FirewallPolicyRule_read>", "name": "rules", "item": {"type": "@FirewallPolicyRule_read"}}]}, {"property": "ruleCollectionType", "value": "FirewallPolicyNatRuleCollection", "props": [{"type": "object", "name": "action", "props": [{"type": "string", "name": "type", "enum": {"items": [{"value": "DNAT"}]}}]}, {"type": "array", "name": "rules", "item": {"type": "object", "props": [{"type": "string", "name": "description"}, {"type": "string", "name": "name"}, {"type": "string", "name": "ruleType", "required": true, "enum": {"items": [{"value": "ApplicationRule"}, {"value": "NatRule"}, {"value": "NetworkRule"}]}}], "discriminators": [{"property": "ruleType", "value": "ApplicationRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "fqdnTags", "item": {"type": "string"}}, {"type": "array", "name": "protocols", "item": {"type": "object", "props": [{"type": "integer32", "name": "port", "format": {"maximum": 64000, "minimum": 0}}, {"type": "string", "name": "protocolType", "enum": {"items": [{"value": "Http"}, {"value": "Https"}]}}]}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "targetFqdns", "item": {"type": "string"}}, {"type": "array", "name": "targetUrls", "item": {"type": "string"}}, {"type": "boolean", "name": "terminateTLS"}, {"type": "array", "name": "webCategories", "item": {"type": "string"}}]}, {"property": "ruleType", "value": "NatRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}, {"type": "string", "name": "translatedAddress"}, {"type": "string", "name": "translatedFqdn"}, {"type": "string", "name": "translatedPort"}]}, {"property": "ruleType", "value": "NetworkRule", "props": [{"type": "array", "name": "destinationAddresses", "item": {"type": "string"}}, {"type": "array", "name": "destinationFqdns", "item": {"type": "string"}}, {"type": "array", "name": "destinationIpGroups", "item": {"type": "string"}}, {"type": "array", "name": "destinationPorts", "item": {"type": "string"}}, {"type": "array", "name": "ipProtocols", "item": {"type": "string", "enum": {"items": [{"value": "Any"}, {"value": "ICMP"}, {"value": "TCP"}, {"value": "UDP"}]}}}, {"type": "array", "name": "sourceAddresses", "item": {"type": "string"}}, {"type": "array", "name": "sourceIpGroups", "item": {"type": "string"}}]}], "cls": "FirewallPolicyRule_read"}}]}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "FirewallPolicyRuleCollectionGroup_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}], "confirmation": ""}]}]}]} \ No newline at end of file diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.xml b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.xml index 068812dfd..f43474232 100644 --- a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.xml +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2ZpcmV3YWxscG9saWNpZXMve30vcnVsZWNvbGxlY3Rpb25ncm91cHMve30=/2022-01-01.xml @@ -841,106 +841,9 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -955,20 +858,25 @@ - - - + + + + - + + - + + - + + - + + @@ -976,31 +884,41 @@ - + + - + + - + + - + + - - + + + + + - - + + + - + + - + + @@ -1010,30 +928,43 @@ - + + - + + - - - + + + + + + + + + - - + + + - + + - + + - + + - + + @@ -1043,15 +974,21 @@ - + + - + + - - + + + + + + @@ -1292,112 +1229,8 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + @@ -1409,29 +1242,29 @@ - - - + + + - - - + + + - + - + - + - + - + @@ -1439,31 +1272,31 @@ - + - + - + - + - - + + - + - + - + @@ -1473,30 +1306,30 @@ - + - + - - - + + + - + - + - + - + - + @@ -1506,10 +1339,10 @@ - + - +