DDoS Mitigation

Upsert Protection Profile

put/ddos-mitigation/profiles/{network}

Create or update the protection profile for an IP or network.

If you provide a subnet (for example a /24), the profile is applied to each individual IP in it. Only available for IPs with Premium protection. An IPv6 address takes every setting of the profile, country and ASN filtering included. An IPv6 prefix (/48 to /128, inside a block you own) is stored as ONE profile for the whole prefix, and its thresholds are totals for the prefix. For an IPv6 prefix or address, always_on_mitigation writes one redirect row for exactly that prefix; the response of the GET tells whether a core enforces it (scrubbing_active).

Authorization

Authorization
Authorization*string

Bearer YOUR_API_TOKEN with an API token. The X-API-Key: YOUR_API_TOKEN header works too.

Path parameters

network*string

Request body

Schema for creating/updating a protection profile.

application/jsonRequired
tcp_validation_level?integer
Range0 ≤ value ≤ 10Default1
tcp_validation_sym_level?integer
Range0 ≤ value ≤ 10Default0
udp_validation_level?integer
Range0 ≤ value ≤ 10Default0
invalid_filter_level?integer
Range0 ≤ value ≤ 10Default1
fragmented_filter_level?integer
Range0 ≤ value ≤ 10Default1
amplification_udp_level?integer
Range0 ≤ value ≤ 10Default1
amplification_tcp_level?integer
Range0 ≤ value ≤ 10Default1
icmp_rate_limit_level?integer
Range0 ≤ value ≤ 10Default0
same_packet_size_level?integer
Range0 ≤ value ≤ 10Default1
stateful_firewall_level?integer
Range0 ≤ value ≤ 10Default0
default_action?integer
Range0 ≤ value ≤ 2Default0
country_mode?integer
Range0 ≤ value ≤ 2Default0
asn_mode?integer
Range0 ≤ value ≤ 2Default0
prefix_list_mode?integer
Range0 ≤ value ≤ 2Default0
udp_threshold_pps?integer
Range0 ≤ value ≤ 100000000Default200000
tcp_threshold_pps?integer
Range0 ≤ value ≤ 100000000Default100000
tcp_syn_threshold_pps?integer
Range0 ≤ value ≤ 100000000Default10000
tcp_ack_threshold_pps?integer
Range0 ≤ value ≤ 100000000Default100000
icmp_threshold_pps?integer
Range0 ≤ value ≤ 100000000Default2000
udp_threshold_mbps?integer
Range0 ≤ value ≤ 100000Default1000
tcp_threshold_mbps?integer
Range0 ≤ value ≤ 100000Default1000
tcp_syn_threshold_mbps?integer
Range0 ≤ value ≤ 100000Default1000
tcp_ack_threshold_mbps?integer
Range0 ≤ value ≤ 100000Default1000
icmp_threshold_mbps?integer
Range0 ≤ value ≤ 100000Default20
syn_flood_threshold?integer
Range0 ≤ value ≤ 10000Default0
syn_flood_block_secs?integer
Range0 ≤ value ≤ 86400Default60
always_on_mitigation?integer | null
Range0 ≤ value ≤ 1
symmetric_routing?integer | null
Range0 ≤ value ≤ 1

Responses

Successful Response

application/json

detail*string