{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/rulesets_Rule", "title": "Rule", "properties": { "action": { "$ref": "#/components/schemas/rulesets_RuleAction" }, "action_parameters": { "description": "The parameters configuring the rule's action.", "title": "Action parameters", "type": "object" }, "categories": { "description": "The categories of the rule.", "example": [ "directory-traversal", "header" ], "items": { "$ref": "#/components/schemas/rulesets_RuleCategory" }, "minItems": 1, "readOnly": true, "title": "Categories", "type": "array", "uniqueItems": true }, "description": { "default": "", "description": "An informative description of the rule.", "title": "Description", "type": "string" }, "enabled": { "allOf": [ { "$ref": "#/components/schemas/rulesets_RuleEnabled" }, { "default": true } ] }, "expression": { "description": "The expression defining which traffic will match the rule.", "example": "ip.src ne 1.1.1.1", "minLength": 1, "title": "Expression", "type": "string" }, "id": { "$ref": "#/components/schemas/rulesets_RuleId" }, "last_updated": { "description": "The timestamp of when the rule was last modified.", "example": "2000-01-01T00:00:00.000000Z", "format": "date-time", "readOnly": true, "title": "Last updated", "type": "string" }, "logging": { "description": "An object configuring the rule's logging behavior.", "properties": { "enabled": { "description": "Whether to generate a log when the rule matches.", "example": true, "title": "Enabled", "type": "boolean" } }, "required": [ "enabled" ], "title": "Logging", "type": "object" }, "ref": { "description": "The reference of the rule (the rule ID by default).", "example": "my_ref", "minLength": 1, "title": "Ref", "type": "string" }, "version": { "description": "The version of the rule.", "example": "1", "pattern": "^[0-9]+$", "readOnly": true, "title": "Version", "type": "string" } }, "required": [ "version", "last_updated" ], "type": "object" }