CC rules
Ordered combinations of matchers and filters; a site can pick one rule group.
cc-rulesProtectionAuthentication: User (some parameters admin only)6 endpointsList CC rule groups
GET
/api/v2/cc-rulesAuthentication: User (some parameters admin only)
Query parameters
| Field | Type | Required | Description |
|---|---|---|---|
| page | integer | — | Page number, starting from 1 |
| page_size | integer | — | Items per page |
| sort | string | — | Sort fields, comma-separated; prefix `-` for descending, e.g. `-created_at,id` |
| tenant_id | integer | — | Admin only: filter by tenant. Ignored for tenant credentials, which only see their own tenant's data |
| enabled | boolean | — | Filter by enabled state. |
| name | string | — | Filter by name substring. |
| owner | string | — | platform = platform objects only; tenant = tenant objects only. |
Create CC rule group
POST
/api/v2/cc-rulesAuthentication: User (some parameters admin only)
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
| des | string | — | Remark; empty if omitted (omitting it on update also clears it, since the update replaces the whole object). |
| enabled | boolean | — | Whether enabled |
| items | CcRuleItem[] | Required | Rule items, executed in order; the count is limited by the setting protect.cc_rule_items_max. |
| name | string | Required | Name |
| show_to | integer[] | — | Tenants that can see a platform rule group; empty = visible to all tenants, otherwise only the listed tenants can see it and select it as a site's cc_level. Returned to admins only. |
| sort | integer | — | Panel sort order (smaller first). |
| tenant_id | integer | — | Owning tenant; null = platform object (built-in or created by an admin, read-only for tenants). |
| visible | boolean | — | Shown in the site's rule group drop-down. |
Batch enable or disable CC rule groups
POST
/api/v2/cc-rules/batch-enableAuthentication: User (some parameters admin only)
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
| enabled | boolean | Required | Whether enabled |
| ids | integer[] | Required | IDs of the objects to change, at most 100. |
Get CC rule group
GET
/api/v2/cc-rules/{id}Authentication: User (some parameters admin only)
Update CC rule group
PUT
/api/v2/cc-rules/{id}Authentication: User (some parameters admin only)
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
| des | string | — | Remark; empty if omitted (omitting it on update also clears it, since the update replaces the whole object). |
| enabled | boolean | — | Whether enabled |
| items | CcRuleItem[] | Required | Rule items, executed in order; the count is limited by the setting protect.cc_rule_items_max. |
| name | string | Required | Name |
| show_to | integer[] | — | Tenants that can see a platform rule group; empty = visible to all tenants, otherwise only the listed tenants can see it and select it as a site's cc_level. Returned to admins only. |
| sort | integer | — | Panel sort order (smaller first). |
| tenant_id | integer | — | Owning tenant; null = platform object (built-in or created by an admin, read-only for tenants). |
| visible | boolean | — | Shown in the site's rule group drop-down. |
Delete CC rule group
DELETE
/api/v2/cc-rules/{id}Authentication: User (some parameters admin only)
CC rules object
| Field | Type | Required | Description |
|---|---|---|---|
| builtin | boolean | — | Built-in object; cannot be deleted. |
| created_at | string | — | Created at |
| des | string | — | Remark; empty if omitted (omitting it on update also clears it, since the update replaces the whole object). |
| enabled | boolean | — | Whether enabled |
| errors | FieldError[] | — | Why each remaining item was not changed; field is /ids/<index>, code as in the single-item update (not_found, readonly and so on). |
| id | integer | — | Record ID |
| ids | integer[] | Required | IDs of the objects to change, at most 100. |
| items | CcRuleItem[] | — | Rule items, executed in order; the count is limited by the setting protect.cc_rule_items_max. |
| name | string | — | Name |
| ruleset_id | string | — | Compiled ruleset id: cc.level.<name> for platform groups (referenced by the site's cc_level and guard.default_cc_level); cc.user.r<id> for tenant groups (selectable as cc_level by the tenant's own sites; sites on a package need custom_cc_rule). |
| show_to | integer[] | — | Tenants that can see a platform rule group; empty = visible to all tenants, otherwise only the listed tenants can see it and select it as a site's cc_level. Returned to admins only. |
| sort | integer | — | Panel sort order (smaller first). |
| tenant_id | integer | — | Owning tenant; null = platform object (built-in or created by an admin, read-only for tenants). |
| updated | integer[] | — | IDs that were set (including those already in the target state), in request order. |
| updated_at | string | — | Updated at |
| visible | boolean | — | Shown in the site's rule group drop-down. |