All Products
Search
Document Center

Edge Security Acceleration:ListWafRules

Last Updated:Nov 07, 2025
This topic is generated by a machine translation engine without any human intervention. ALIBABA CLOUD DOES NOT GUARANTEE THE ACCURACY OF MACHINE TRANSLATED CONTENT. To request a human-translated version of this topic or provide feedback on this translation, please include it in the feedback form.

List WAF Rules

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

Authorization information

The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:

  • Operation: the value that you can use in the Action element to specify the operation on a resource.
  • Access level: the access level of each operation. The levels are read, write, and list.
  • Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
    • For mandatory resource types, indicate with a prefix of * .
    • If the permissions cannot be granted at the resource level, All Resources is used in the Resource type column of the operation.
  • Condition Key: the condition key that is defined by the cloud service.
  • Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
OperationAccess levelResource typeCondition keyAssociated operation
esa:ListWafRuleslist
*Site
acs:esa:{#regionId}:{#accountId}:site/{#SiteId}
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
SiteIdlongYes

Site ID, which can be obtained by calling the ListSites interface.

1
SiteVersionintegerNo

Site version.

0
PhasestringNo

WAF rule type. Values:

  • http_anti_scan: Scan protection
  • http_bot: Bots
http_custom
QueryArgsobjectNo

Query filter conditions.

IdlongNo

Exact query for WAF rule ID.

20000001
NameLikestringNo

Fuzzy query for WAF rule name.

example
IdNameLikestringNo

Fuzzy query for WAF rule ID or name.

example
StatusstringNo

Exact query for WAF rule status.

on
ConfigValueLikestringNo

Fuzzy search for values in IP access control.

10.0.0.1
OrderBystringNo

Sort the returned list by the specified column.

position
DescbooleanNo

Whether to reverse the sorting result.

true
PageNumberintegerNo

Query page number, used for pagination.

1
PageSizeintegerNo

Query page size, used for pagination.

20

Response parameters

ParameterTypeDescriptionExample
object

Schema of Response

RequestIdstring

Request ID.

36af3fcc-43d0-441c-86b1-428951dc8225
SiteUsagelong

Site usage.

5
InstanceUsagelong

Number of rules used in this WAF phase for the corresponding instance of the site.

10
TotalCountlong

Total number of rules after filtering.

20
Rulesarray<object>

Returned list of rules.

Ruleobject

Rule details.

UpdateTimestring

Modification time.

2024-01-01T00:00:00Z
RulesetIdlong

Ruleset ID.

10000001
Idlong

Rule ID.

20000001
Positionlong

Position order of the rule in the corresponding ruleset.

1
Phasestring

WAF phase.

http_custom
Typestring

Rule type.

http_custom
Namestring

Rule name.

example
Statusstring

Rule status.

on
Fieldsarray

List of fields for rule matching

fieldstring

The value of the rule's matching field.

ip.geoip.asnum
CharacteristicsFieldsarray

List of statistical objects for frequency control rules.

characteristicsFieldstring

Statistical object for frequency control rules.

ip.src
Actionstring

The action corresponding to the rule.

deny
Skipstring

Skip attribute for whitelist rules.

part
Tagsarray

List of WAF phases to be skipped by whitelist rules.

tagstring

WAF phase value to be skipped by whitelist rules.

http_custom
TimerWafTimer

Configuration for the effective time of the rule.

ConfigWafRuleConfig

Rule configuration.

PageNumberinteger

Page number.

1
PageSizeinteger

Page size.

20

Examples

Sample success responses

JSONformat

{
  "RequestId": "36af3fcc-43d0-441c-86b1-428951dc8225",
  "SiteUsage": 5,
  "InstanceUsage": 10,
  "TotalCount": 20,
  "Rules": [
    {
      "UpdateTime": "2024-01-01T00:00:00Z",
      "RulesetId": 10000001,
      "Id": 20000001,
      "Position": 1,
      "Phase": "http_custom",
      "Type": "http_custom",
      "Name": "example",
      "Status": "on",
      "Fields": [
        "ip.geoip.asnum"
      ],
      "CharacteristicsFields": [
        "ip.src"
      ],
      "Action": "deny",
      "Skip": "part",
      "Tags": [
        "http_custom"
      ],
      "Timer": {
        "Scopes": "",
        "Zone": 0,
        "Periods": [
          {
            "Start": "",
            "End": ""
          }
        ],
        "WeeklyPeriods": [
          {
            "Days": "",
            "DailyPeriods": [
              {
                "Start": "",
                "End": ""
              }
            ]
          }
        ]
      },
      "Config": {
        "Status": "on",
        "Action": "deny",
        "Actions": {
          "Response": {
            "Id": 50000001,
            "Code": 403
          },
          "Bypass": {
            "Skip": "part",
            "RegularRules": [
              100001
            ],
            "CustomRules": [
              20000001
            ],
            "RegularTypes": [
              "sqli"
            ],
            "Tags": [
              "http_custom"
            ]
          }
        },
        "ManagedList": "intelligence_crawler",
        "ManagedRulesets": [
          {
            "ProtectionLevel": 4,
            "Action": "deny",
            "ManagedRules": [
              {
                "Status": "on",
                "Action": "deny",
                "Id": 100001
              }
            ],
            "AttackType": 11,
            "NumberTotal": 100,
            "NumberEnabled": 50
          }
        ],
        "Sigchl": [
          "sig"
        ],
        "Name": "example",
        "AppSdk": {
          "CustomSign": {
            "Value": "examplesignvalue",
            "Key": "sign"
          },
          "CustomSignStatus": "on",
          "FeatureAbnormal": [
            "wxbb_invalid_sign"
          ]
        },
        "RateLimit": {
          "Characteristics": {
            "Logic": "and",
            "Criteria": [
              {
                "Logic": "and",
                "Criteria": [
                  {
                    "Logic": "and",
                    "Criteria": [
                      {
                        "MatchType": "ip.src",
                        "MatchOperator": "eq",
                        "MatchValue": "1.1.1.1",
                        "Negate": true,
                        "ConvertToLower": true
                      }
                    ],
                    "MatchType": "ip.src",
                    "MatchOperator": "eq",
                    "MatchValue": "1.1.1.1",
                    "Negate": true,
                    "ConvertToLower": true
                  }
                ],
                "MatchType": "ip.src",
                "MatchOperator": "eq",
                "MatchValue": "1.1.1.1",
                "Negate": true,
                "ConvertToLower": true
              }
            ],
            "MatchType": "ip.src",
            "MatchOperator": "eq",
            "MatchValue": "1.1.1.1",
            "Negate": true,
            "ConvertToLower": true
          },
          "OnHit": true,
          "TTL": 10,
          "Threshold": {
            "ManagedRulesBlocked": 10,
            "DistinctManagedRules": 10,
            "ResponseStatus": {
              "Ratio": 10,
              "Count": 10,
              "Code": 404
            },
            "Traffic": "10Gb",
            "Request": 10
          },
          "Interval": 10
        },
        "Type": "http_custom",
        "AppPackage": {
          "PackageSigns": [
            {
              "Sign": "sign",
              "Name": "name"
            }
          ]
        },
        "ManagedGroupId": 30000001,
        "Timer": {
          "Scopes": "",
          "Zone": 0,
          "Periods": [
            {
              "Start": "",
              "End": ""
            }
          ],
          "WeeklyPeriods": [
            {
              "Days": "",
              "DailyPeriods": [
                {
                  "Start": "",
                  "End": ""
                }
              ]
            }
          ]
        },
        "Expression": "ip.src eq 1.1.1.1",
        "SecurityLevel": {
          "Value": "low"
        },
        "Value": "10.0.0.1",
        "Id": 20000001,
        "Notes": "example notes"
      }
    }
  ],
  "PageNumber": 1,
  "PageSize": 20
}

Error codes

HTTP status codeError codeError messageDescription
400InvalidParameterThe specified parameter is invalid.The specified parameter is invalid.
400InternalExceptionFailed to call the service. Try again later or contact technical support.Failed to call the service. Try again later or contact technical support.

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2024-12-12The Error code has changedView Change Details
2024-09-25The Error code has changedView Change Details