Version 2.1.1792967583 · latest Download OpenAPI Markdown

CC matchers

Conditions that identify requests in CC protection; reusable across rule groups.

cc-matchesProtectionAuthentication: User (some parameters admin only)6 endpoints

List CC matchers

GET/api/v2/cc-matches
Authentication: User (some parameters admin only)

Query parameters

FieldTypeRequiredDescription
pageinteger— Page number, starting from 1
Default 1
page_sizeinteger— Items per page
Default 20
sortstring— Sort fields, comma-separated; prefix `-` for descending, e.g. `-created_at,id`
tenant_idinteger— Admin only: filter by tenant. Ignored for tenant credentials, which only see their own tenant's data
namestring— Filter by name substring.
ownerstring— platform = platform objects only; tenant = tenant objects only.
Values ["platform","tenant"]

Create CC matcher

POST/api/v2/cc-matches
Authentication: User (some parameters admin only)

Request body application/json

FieldTypeRequiredDescription
desstring— Remark; empty if omitted (omitting it on update also clears it, since the update replaces the whole object).
namestringRequired Name
whenobject— Rule DSL condition: a combination of all/any/not, or a leaf {f, op, v, set, neg}; validated by the server and errors are returned as 422 (field is a JSON Pointer, code is the lowercase DSL error code). null = match everything.

Replay a CC matcher draft

POST/api/v2/cc-matches/replay
Authentication: User (some parameters admin only)

Request body application/json

FieldTypeRequiredDescription
site_idinteger— Count this site's traffic only; omitted = every site visible to the caller.
whenobject— Rule DSL condition: a combination of all/any/not, or a leaf {f, op, v, set, neg}; validated by the server and errors are returned as 422 (field is a JSON Pointer, code is the lowercase DSL error code). null = match everything.

Get CC matcher

GET/api/v2/cc-matches/{id}
Authentication: User (some parameters admin only)

Update CC matcher

PUT/api/v2/cc-matches/{id}
Authentication: User (some parameters admin only)

Request body application/json

FieldTypeRequiredDescription
desstring— Remark; empty if omitted (omitting it on update also clears it, since the update replaces the whole object).
namestringRequired Name
whenobject— Rule DSL condition: a combination of all/any/not, or a leaf {f, op, v, set, neg}; validated by the server and errors are returned as 422 (field is a JSON Pointer, code is the lowercase DSL error code). null = match everything.

Delete CC matcher

DELETE/api/v2/cc-matches/{id}
Authentication: User (some parameters admin only)

CC matchers object

FieldTypeRequiredDescription
builtinboolean— Built-in object; cannot be deleted.
read-only
created_atstring— Created at
read-only
desstring— Remark; empty if omitted (omitting it on update also clears it, since the update replaces the whole object).
hitsinteger— Requests matched in the window (restored by sample_weight).
idinteger— Record ID
read-only
ipsinteger— Distinct client IPs among the matched requests (a distinct count, not restored by sample weight).
namestring— Name
reasonstring— Explanation when supported=false.
sampledboolean— Some rows in the window were sampled (sample_weight > 1); hits and total are estimates.
site_idinteger— Count this site's traffic only; omitted = every site visible to the caller.
sitesinteger— Distinct sites among the matched requests (a distinct count, not restored by sample weight).
supportedboolean— false = the condition uses something access_log does not hold (request headers, accept_language, named sets), so nothing was replayed; see reason.
tenant_idinteger— Owning tenant; null = platform object (built-in or created by an admin, read-only for tenants).
read-only
top_ipsCcMatchReplayIp[]— Client IPs with the most matched requests, at most 20, sorted by requests descending; empty when supported=false or nothing matched.
top_urlsCcMatchReplayUrl[]— URLs (without the query string) with the most matched requests, at most 5, sorted by requests descending; empty when supported=false or nothing matched.
totalinteger— Total requests in the window (also restored).
updated_atstring— Updated at
read-only
whenobject— Rule DSL condition: a combination of all/any/not, or a leaf {f, op, v, set, neg}; validated by the server and errors are returned as 422 (field is a JSON Pointer, code is the lowercase DSL error code). null = match everything.
window_hoursinteger— Replay window in hours (fixed at 24).