Find an API

Search public APIs with auth details & Postman guides

← All APIs

AWS Network Firewall

amazonaws · Cloud

Cloud No Auth Free & Open cloud

This is the API Reference for Network Firewall. This guide is for developers who need detailed information about the Network Firewall API actions, data types, and errors. The REST API requires you to handle connection details, such as calculating signatures, handling request retries, and error handling. For general information about using the Amazon Web Services REST APIs, see Amazon Web Services APIs .

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

POST ListFirewallPolicies

Retrieves the metadata for the firewall policies that you have defined. Depending on your setting for max results and the number of firewall policies, a single call might not return the full list.

https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target NetworkFirewall_20201112.ListFirewallPolicies
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies?NextToken=example&MaxResults=example" \
  -H "X-Amz-Target: NetworkFirewall_20201112.ListFirewallPolicies"
import requests
params = {
    "NextToken": "example",
    "MaxResults": "example"
}
headers = {
    "X-Amz-Target": "NetworkFirewall_20201112.ListFirewallPolicies"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies');
url.searchParams.set('NextToken', 'example');
url.searchParams.set('MaxResults', 'example');

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'NetworkFirewall_20201112.ListFirewallPolicies'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies")
	q := baseURL.Query()
	q.Set("NextToken", "example")
	q.Set("MaxResults", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "NetworkFirewall_20201112.ListFirewallPolicies")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies")
uri.query = URI.encode_www_form({
  "NextToken" => "example",
  "MaxResults" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "NetworkFirewall_20201112.ListFirewallPolicies"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewallPolicies?" . http_build_query([
    "NextToken" => "example",
    "MaxResults" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: NetworkFirewall_20201112.ListFirewallPolicies"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST ListFirewalls

Retrieves the metadata for the firewalls that you have defined. If you provide VPC identifiers in your request, this returns only the firewalls for those VPCs. Depending on your setting for max results and the number of firewalls, a single call might not return the full list.

https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target NetworkFirewall_20201112.ListFirewalls
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls?NextToken=example&MaxResults=example" \
  -H "X-Amz-Target: NetworkFirewall_20201112.ListFirewalls"
import requests
params = {
    "NextToken": "example",
    "MaxResults": "example"
}
headers = {
    "X-Amz-Target": "NetworkFirewall_20201112.ListFirewalls"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls');
url.searchParams.set('NextToken', 'example');
url.searchParams.set('MaxResults', 'example');

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'NetworkFirewall_20201112.ListFirewalls'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls")
	q := baseURL.Query()
	q.Set("NextToken", "example")
	q.Set("MaxResults", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "NetworkFirewall_20201112.ListFirewalls")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls")
uri.query = URI.encode_www_form({
  "NextToken" => "example",
  "MaxResults" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "NetworkFirewall_20201112.ListFirewalls"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListFirewalls?" . http_build_query([
    "NextToken" => "example",
    "MaxResults" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: NetworkFirewall_20201112.ListFirewalls"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST ListRuleGroups

Retrieves the metadata for the rule groups that you have defined. Depending on your setting for max results and the number of rule groups, a single call might not return the full list.

https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target NetworkFirewall_20201112.ListRuleGroups
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups?NextToken=example&MaxResults=example" \
  -H "X-Amz-Target: NetworkFirewall_20201112.ListRuleGroups"
import requests
params = {
    "NextToken": "example",
    "MaxResults": "example"
}
headers = {
    "X-Amz-Target": "NetworkFirewall_20201112.ListRuleGroups"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups');
url.searchParams.set('NextToken', 'example');
url.searchParams.set('MaxResults', 'example');

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'NetworkFirewall_20201112.ListRuleGroups'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups")
	q := baseURL.Query()
	q.Set("NextToken", "example")
	q.Set("MaxResults", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "NetworkFirewall_20201112.ListRuleGroups")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups")
uri.query = URI.encode_www_form({
  "NextToken" => "example",
  "MaxResults" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "NetworkFirewall_20201112.ListRuleGroups"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/network-firewall/2020-11-12/#X-Amz-Target=NetworkFirewall_20201112.ListRuleGroups?" . http_build_query([
    "NextToken" => "example",
    "MaxResults" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: NetworkFirewall_20201112.ListRuleGroups"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with AWS Network Firewall?

AWS Network Firewall is a Cloud API. Developers commonly use cloud APIs for:

  • provisioning and managing cloud infrastructure
  • automating deployments and container orchestration
  • monitoring uptime and performance metrics
  • managing storage buckets and databases
  • setting up auto-scaling and load balancing

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. AWS Network Firewall is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗