JSON object
Ruleset object
A fully populated ruleset object has the following JSON structure.
{ "id": "ruleset-id", "name": "Example Ruleset", "description": "Description of Example Ruleset", "kind": "custom", "version": "2", "phase": "http_request_firewall_custom", "rules": [ { "id": "rule-id", "version": "2", "action": "block", "expression": "cf.zone.name eq \"example.com\" ", "last_updated": "2020-07-20T10:44:29.124515Z" } ], "last_updated": "2020-07-20T10:44:29.124515Z"
}
Properties
The table lists the properties of a ruleset object.
Property | Description | Value | Notes |
---|---|---|---|
id | Represents the unique Cloudflare-generated identifier for a given version of a ruleset. | 32-character UUIDv4 string | Unique, read-only |
name | A human-readable name for the ruleset. | String | The name is immutable. You cannot change the name over the lifetime of the ruleset. |
description | Optional description for the ruleset. | String | You can change the description over the lifetime of the ruleset. |
kind | The kind of ruleset the JSON object represents. | There are four kinds of rulesets:
| kind is immutable. |
version | The version of the ruleset. | Integer value starting at 1 and incremented by 1 each time the
ruleset is modified | Read-only |
phase | The phase to which the ruleset belongs. | String | phase is immutable. |
rules | A list of rules to include in the ruleset. | Array of JSON objects (refer to rule JSON object) | |
last_updated | The time (UTC) when the ruleset was last updated. | ISO 8601 timestamp in the format YYYY-MM-DDThh:mm:ss.TZD | Read-only |
Rule object structure and properties
A fully populated rule JSON object has the following structure:
{ "id": "rule-id", "version": "2", "action": "block", "categories": ["wordpress"], "expression": "cf.zone.name eq \"example.com\"", "last_updated": "2020-07-20T10:44:29.124515Z", "enabled": true
}
The JSON object properties for a rule are defined as follows:
Property | Description | Value | Notes |
---|---|---|---|
id | Represents the unique Cloudflare-generated identifier for a given version of a rule. | 32-character UUIDv4 string | Unique, read-only |
version | The version of the rule. | Integer value starting at 1 and incremented by 1 each time the
ruleset is modified | Read-only. Changing the order of a rule in a ruleset does not change its version. |
action | Defines what happens when there’s a match for the rule expression. | String | The available actions depend on the phase where the rule's ruleset is executed. |
categories | Tags associated with the current rule. You can define overrides that affect rules with a given tag. | Array of strings | Read-only. Only available in rules of Managed Rulesets. |
expression | Criteria defining when there is a match for the current rule. | String | The fields and functions you can use in a rule expression depend on the phase where the rule's ruleset is executed. |
last_updated | The time (UTC) when the rule was last updated. | ISO 8601 timestamp in the format YYYY-MM-DDThh:mm:ss.TZD | Read-only |
enabled | When set to true , the current rule is enabled. | Boolean |