DeleteFirewall - AWS Network Firewall


Deletes the specified Firewall and its FirewallStatus. This operation requires the firewall's DeleteProtection flag to be FALSE. You can't revert this operation.

You can check whether a firewall is in use by reviewing the route tables for the Availability Zones where you have firewall subnet mappings. Retrieve the subnet mappings by calling DescribeFirewall. You define and update the route tables through Amazon VPC. As needed, update the route tables for the zones to remove the firewall endpoints. When the route tables no longer use the firewall endpoints, you can remove the firewall safely.

To delete a firewall, remove the delete protection if you need to using UpdateFirewallDeleteProtection, then delete the firewall by calling DeleteFirewall.

Request Syntax

{ "FirewallArn": "string", "FirewallName": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.


The Amazon Resource Name (ARN) of the firewall.

You must specify the ARN or the name, and you can specify both.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Pattern: ^arn:aws.*

Required: No


The descriptive name of the firewall. You can't change the name of a firewall after you create it.

You must specify the ARN or the name, and you can specify both.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^[a-zA-Z0-9-]+$

Required: No

Response Syntax

{ "Firewall": { "DeleteProtection": boolean, "Description": "string", "EncryptionConfiguration": { "KeyId": "string", "Type": "string" }, "FirewallArn": "string", "FirewallId": "string", "FirewallName": "string", "FirewallPolicyArn": "string", "FirewallPolicyChangeProtection": boolean, "SubnetChangeProtection": boolean, "SubnetMappings": [ { "IPAddressType": "string", "SubnetId": "string" } ], "Tags": [ { "Key": "string", "Value": "string" } ], "VpcId": "string" }, "FirewallStatus": { "CapacityUsageSummary": { "CIDRs": { "AvailableCIDRCount": number, "IPSetReferences": { "string" : { "ResolvedCIDRCount": number } }, "UtilizedCIDRCount": number } }, "ConfigurationSyncStateSummary": "string", "Status": "string", "SyncStates": { "string" : { "Attachment": { "EndpointId": "string", "Status": "string", "StatusMessage": "string", "SubnetId": "string" }, "Config": { "string" : { "SyncStatus": "string", "UpdateToken": "string" } } } } } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.


The firewall defines the configuration settings for an AWS Network Firewall firewall. These settings include the firewall policy, the subnets in your VPC to use for the firewall endpoints, and any tags that are attached to the firewall AWS resource.

The status of the firewall, for example whether it's ready to filter network traffic, is provided in the corresponding FirewallStatus. You can retrieve both objects by calling DescribeFirewall.

Type: Firewall object


Detailed information about the current status of a Firewall. You can retrieve this for a firewall by calling DescribeFirewall and providing the firewall name and ARN.

Type: FirewallStatus object


For information about the errors that are common to all actions, see Common Errors.


Your request is valid, but Network Firewall couldn't perform the operation because of a system problem. Retry your request.

HTTP Status Code: 500


The operation failed because it's not valid. For example, you might have tried to delete a rule group or firewall policy that's in use.

HTTP Status Code: 400


The operation failed because of a problem with your request. Examples include:

  • You specified an unsupported parameter name or value.

  • You tried to update a property with a value that isn't among the available types.

  • Your request references an ARN that is malformed, or corresponds to a resource that isn't valid in the context of the request.

HTTP Status Code: 400


Unable to locate a resource using the parameters that you provided.

HTTP Status Code: 400


Unable to process the request due to throttling limitations.

HTTP Status Code: 400


The operation you requested isn't supported by Network Firewall.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: