dots.v2.firewalls.byFirewall_id().rules.post()

Generated on 27 Oct 2026 from DoTs version v1.21.0

Usage

client.v2.firewalls.byFirewall_id(firewall_id).rules.post(body: Firewall_rules, requestConfiguration?: RequestConfiguration<object>): Promise<void>

Description

To add additional access rules to a firewall, send a POST request to /v2/firewalls/{firewall_id}/rules. The body of the request may include an inbound_rules and/or outbound_rules attribute containing an array of rules to be added.

No response body will be sent back, but the response code will indicate success. Specifically, the response code will be a 204, which means that the action was successful with no returned body data.

Parameters

Path Parameters

firewall_id string required

Example: bb4b2611-3d72-467b-8602-280330ecd65c

A unique ID that can be used to identify and reference a firewall.

Request Body

inboundRules array of objects or null optional
Show child properties
protocol string required

The type of traffic to be allowed. This may be one of tcp, udp, or icmp.

One of: tcp, udp, icmp

ports string required

Example: 8000

The ports on which traffic will be allowed specified as a string containing a single port, a range (e.g. "8000-9000"), or "0" when all ports are open for a protocol. For ICMP rules this parameter will always return "0".

action string optional

The action to be taken when traffic matches the rule. This may be one of allow or deny. For backward compatibility, this field is optional. When not set, it defaults to allow.

One of: allow, deny

Default: allow

sources object required

An object specifying locations from which inbound traffic will be accepted.

Additional nested properties are not shown.

outboundRules array of objects or null optional
Show child properties
protocol string required

The type of traffic to be allowed. This may be one of tcp, udp, or icmp.

One of: tcp, udp, icmp

ports string required

Example: 8000

The ports on which traffic will be allowed specified as a string containing a single port, a range (e.g. "8000-9000"), or "0" when all ports are open for a protocol. For ICMP rules this parameter will always return "0".

action string optional

The action to be taken when traffic matches the rule. This may be one of allow or deny. For backward compatibility, this field is optional. When not set, it defaults to allow.

One of: allow, deny

Default: allow

destinations object required

An object specifying locations to which outbound traffic that will be allowed.

Additional nested properties are not shown.

Request Sample

Show Request Sample
import { FetchRequestAdapter } from "@microsoft/kiota-http-fetchlibrary";
import {
    createDigitalOceanClient,
    DigitalOceanApiKeyAuthenticationProvider,
} from "@digitalocean/dots";

const authProvider = new DigitalOceanApiKeyAuthenticationProvider(process.env.DIGITALOCEAN_TOKEN!);
const adapter = new FetchRequestAdapter(authProvider);
const client = createDigitalOceanClient(adapter);

await client.v2.firewalls
    .byFirewall_id("bb4b2611-3d72-467b-8602-280330ecd65c").rules.post({
    inboundRules: [
        {
            protocol: "tcp",
            ports: "3306",
            action: "allow",
            sources: {
                dropletIds: [
                    49696269,
                ],
            },
        },
    ],
    outboundRules: [
        {
            protocol: "tcp",
            ports: "3306",
            action: "allow",
            destinations: {
                dropletIds: [
                    49696269,
                ],
            },
        },
    ],
});

More Information

See /v2/firewalls/{firewall_id}/rules in the API reference for additional detail on responses, headers, parameters, and more.

We can't find any results for your search.

Try using different keywords or simplifying your search terms.