Skip to main content

Create Web Access Control Rule

Create a new web access control rule and binds it to one or more websites.

Request

Request-Line

POST /waap/v1.0/pbrStrategy/webAccessControls HTTP/1.1

Request Parameters

Body Parameters

ParameterTypeRequiredDescription
nameStringMandatoryRule name for web access control.
descriptionStringOptionalThe description can have 1-200 characters.
pathOperatorStringMandatoryMatching operator used to evaluate the request path. Supported values: equal, notEqual, contain, notContain, beginsWith, notBeginsWith, endsWith, notEndsWith, regex, notMatchRegex, include, exclude.
pathPatternStringMandatoryThe path pattern to be matched against the request URI. The interpretation depends on pathOperator. For example, when pathOperator is contain, the rule triggers if the request path contains this value.
keyTypeStringMandatoryThe request attribute used for matching. Supported values: ip, fingerprint, userAgent, cookieId.
keyValueString[]MandatoryOne or more values used to match against the selected keyType. Multiple values can be provided.
keyRegexBooleanOptionalIndicates whether keyValue should be interpreted as a regular expression. This field is only applicable when keyType is fingerprint, userAgent, or cookieId. Default is false.
devTypeString[]MandatorySpecifies the device types that the rule applies to. Supported values: pc, mac, mobile. Multiple device types can be selected.
triggeringProbabilityIntegerMandatoryThe probability (in percentage) that the configured action will be triggered when the request matches the rule. Supported values: 100, 90, 80, 70, 60, 50, 40, 30, 20, 10.
autoListKeyStringMandatoryThe key type used by Auto-Web ACL to automatically control request access. Supported values: ip, fingerprint.
autoListDurationIntegerMandatoryThe duration (in seconds) that the key will remain in the Auto-Web ACL once triggered. The valid range is 0 to 600000.
websitesInteger[]MandatoryList of website IDs the rule applies to.

Response

Response Body

ParameterTypeDescription
ruleIdIntegerUnique identifier assigned to the created web access control rule.

Status Codes, Error Codes and Error Messages

Status CodeError CodeError Message
400Request.BadRequestBad request.
400Name.InvalidName is empty or invalid.
400PathOperator.InvalidPathOperator is empty or invalid.
400PathPattern.InvalidPathPattern is empty or invalid.
400KeyType.InvalidKeyType is empty or invalid.
400KeyValue.InvalidKeyValue is empty or invalid.
400DevType.InvalidDevType is empty or invalid.
400TriggeringProbability.InvalidTriggeringProbability is empty or invalid.
400AutoListKey.InvalidAutoListKey is empty or invalid.
400AutoListDuration.InvalidAutoListDuration is empty or invalid.
404Website.NotFoundWebsite is not found.

Examples

Create Web Access Control Rule

Request

POST /waap/v1.0/pbrStrategy/webAccessControls HTTP/1.1

{
"name": "test",
"description": "test",
"pathOperator": "endsWith",
"pathPattern": "/test",
"keyType": "userAgent",
"keyValue": [
"test"
],
"keyRegex": false,
"devType": [
"pc",
"mac",
"mobile"
],
"triggeringProbability": 10,
"autoListKey": "ip",
"autoListDuration": 60,
"websites": []
}

Successful Response Body

{
"ruleId": 261700,
}