Help Center/ Anti-DDoS Service/ API Reference/ AAD APIs/ AAD Protection Policies/ Querying the Frequency Control Rule List
Updated on 2026-01-06 GMT+08:00

Querying the Frequency Control Rule List

Function

This API is used to query the frequency control rule list.

Calling Method

For details, see Calling APIs.

URI

GET /v2/aad/policies/waf/frequency-control-rule

Table 1 Query Parameters

Parameter

Mandatory

Type

Description

domain_name

Yes

String

Domain name

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

token

Content-Type

Yes

String

Content-Type

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

total

Integer

total

items

Array of FrequencyControlRule objects

items

Table 4 FrequencyControlRule

Parameter

Type

Description

id

String

id

producer

Integer

Whether the rule was generated by intelligent CC attack protection.

name

String

Rule name

url

String

URL to which the rule applies.

limit_num

String

Rate limiting frequency. Range: 1 to 2,147,483,647 requests.

limit_period

String

Rate limiting period, in seconds. Range: 1 to 3,600.

lock_time

String

Block duration, in seconds. Range: 0 to 65,535.

tag_type

String

Rate limiting mode. The options are ip, cookie, header, other, policy, domain, and url.

Source rate limiting. ip for IP address-based rate limit. Web visitors are identified by their IP addresses. cookie: Cookie-based rate limiting. Website visitors are identified by the key value of their cookies. header: Header-based rate limiting. Website visitors are identified by their headers. other: Referer-based rate limiting. Website visitors are identified by the Referer field (user-defined request source). - Destination rate limiting. policy: policy-based rate limiting. domain: domain name-based rate limiting. url: URL-based rate limiting.

tag_index

String

User ID. This parameter is required if you set the user-based rate limiting (cookie or header).

tag_condition

TagCondition object

User ID. This parameter is required if you set the rate limiting mode to other.

action

ActionInfo object

Action to take if the number of requests reaches the upper limit.

mode

String

CC attack protection mode. 0: standard (old version). This version only allows you to restrict the paths of domain names. 1: advanced (new version). This version allows you to restrict paths, IP addresses, cookies, headers, and parameters. The mode parameter must be passed when you modify a CC rule.

conditions

Array of Condition objects

Rate limiting conditions of the CC rule protection rule.

unlock_num

Integer

Allowable frequency. The value ranges from 0 to 2,147,483,647 requests.

domain_aggregation

Boolean

Domain name request aggregation statistics.

region_aggregation

Boolean

Global request counting.

captcha_lock_time

Integer

Lockout verification time.

grayscale_time

Boolean

Whether to take effect in gray mode.

Table 5 TagCondition

Parameter

Type

Description

category

String

Protective action.

contents

Array of strings

Field content.

Table 6 ActionInfo

Parameter

Type

Description

category

String

Action type. block: The service blocks attacks. captcha: A verification is required. log: The service only logs the event. dynamic_block: The service dynamic blocks the traffic based on the rule.

detail

DetailInfo object

Information of the blocking page.

Table 7 DetailInfo

Parameter

Type

Description

response

PageRespInfo object

Response

Table 8 PageRespInfo

Parameter

Type

Description

content_type

String

Page type.

content

String

Page content

Table 9 Condition

Parameter

Type

Description

category

String

Field type

url: path

ip: IPv4

ipv6: IPv6

params: Params

cookie: Cookie

header: Header

response_code: Response code

contents

Array of strings

Content for the matching logic in the condition list.

If the matching logic is set to exist or not_exist, contents must be left blank. In other cases, contents is mandatory and cannot exceed 2,048 characters.

If category is set to response_code, the status code for contents ranges from 200 to 599. The regular expression is ^(?:[2-5]\d{2})$.

If the matching logic contains len, the value of contents must be an integer ranging from 0 to 65,535. If the match logic contains num, the value of contents must be an integer ranging from 0 to 512.

index

String

Subfield.

If the field type is ip or ipv6, index is mandatory. Its value must be client-ip for client IP addresses,** x-forwarded-for** for X-Forwarded-For, or ** $remote_addr** for TCP connection IP addresses.

If category is set to params, cookie, or header, this parameter is mandatory. Set this parameter based on the site requirements.

If the matching logic is set to num_greater, num_less, num_equal, or** num_not_equal**, this parameter must be left empty.

If this parameter is not left empty, the maximum length cannot exceed 2,048 characters.

logic_operation

String

Condition matching logic.

If category is set to url, the matching logic can be contain, not_contain, equal, not_equal, prefix, not_prefix, suffix, not_suffix, len_greater, len_less, len_equal, or len_not_equal.

If category is set to ip, ipv6, or response_code, the matching logic can be equal or not_equal.

If category is set to params, cookie, or header, the matching logic can be contain, not_contain, equal, not_equal, prefix, not_prefix, suffix, not_suffix, len_greater, len_less, len_equal, len_not_equal, num_greater, num_less, num_equal, num_not_equal, exist, or not_exist.

Status code: 400

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_description

String

Error description.

Example Requests

None

Example Responses

None

Status Codes

Status Code

Description

200

OK

400

Error response

Error Codes

See Error Codes.