Policies
PATCH
/v1/policies/{tenant_id}/{app_id}/{agent_id}/{env}/detector/{detector_name}Patch Detector
Update single detector configuration. Creates a new policy version with only this detector changed. Other detector configurations remain unchanged. **Supported detectors**: pii, jailbreak, toxicity, competitor, topic_restriction, secrets, exfiltration, tools, structure, abuse
CI or Admin tokenscope: writeoperation_id: policies.patchDetector
Authentication
Requires a CI- or admin-level token. Runtime tokens are rejected for mutations.
SDK install
pip install znyx-sdknpm install @znyx/sdkPath parameters
| Name | Type | Required | Description |
|---|---|---|---|
| tenant_id#path | string | required | — |
| app_id#path | string | required | — |
| agent_id#path | string | required | — |
| env#path | string | required | — |
| detector_name#path | string | required | — |
Header parameters
| Name | Type | Required | Description |
|---|---|---|---|
| x-created-by#header | string | optional | — |
Request bodyrequired
| Field | Type | Required | Description |
|---|---|---|---|
| config | object | required | Detector configuration |
| change_reason | string | null | optional | Reason for this change |
Responses
| Status | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Response schema
any
Errors & what triggers them
| Code | Trigger | Fix |
|---|---|---|
| 403 | Caller is not authorized for this app_id (X-API-Key or JWT scope mismatch). | — |
| 422 | Policy JSON failed schema validation — unknown detector, bad threshold. | — |
| 500 | Database contention while writing the new version. | Retry once with fresh `If-Match` if your client sends it. |
Request
curl -X PATCH 'https://api.znyx.ai/v1/policies/00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000/prod/detector/<detector_name>' \
-H 'Authorization: Bearer $ZNYX_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"change_reason": "Enabled PII blocking",
"config": {
"action": "BLOCK",
"enabled": true
}
}'Response
application/json
Successful Response
null
Schema: any