Dry-run or purge old durable admin audit events.
Full-admin-only retention control for durable command-center audit events. Dry-run returns counts only. Non-dry-run purges delete old rows from `admin_access_events`, `admin_command_events`, and `admin_approval_events` and require the exact confirmation string. Request bodies, raw tokens, prompts, outputs, query values, and local route details are never stored in these audit tables.
POST
/v1/admin/retention/audit-events/purge
Full-admin-only retention control for durable command-center audit
events. Dry-run returns counts only. Non-dry-run purges delete old rows
from `admin_access_events`, `admin_command_events`, and
`admin_approval_events` and require the exact confirmation string.
Request bodies, raw tokens, prompts, outputs, query values, and local
route details are never stored in these audit tables.
Authentication
API Key (header: X-B3IQ-Admin-Token)
Request Body required
application/jsonolder_than_days
integer
Delete audit events created before this rolling window.
dry_run
boolean
When true, return eligible row counts without deleting.
confirm
string
Required for non-dry-run requests and must equal `PURGE AUDIT EVENTS`.
Responses
200
Audit retention dry-run or purge result.
application/jsonobject
string
Enum:
b3iq.admin.audit_retention_purgestatus
string
Enum:
dry_run, purgedretention_policy
string
Enum:
admin_audit_events_v1eligible_access_event_count
integer
eligible_command_event_count
integer
eligible_approval_event_count
integer
eligible_total_event_count
integer
purged_access_event_count
integer
purged_command_event_count
integer
purged_approval_event_count
integer
purged_total_event_count
integer
older_than_days
integer
cutoff_created_before
string (date-time)
purged_at
string (date-time)
default
B3IQ-native problem response.
curl -X POST 'https://{controlPlaneHost}/v1/admin/retention/audit-events/purge' \ -H 'X-B3IQ-Admin-Token: YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "older_than_days": 365, "dry_run": false, "confirm": "string"}'
const response = await fetch('https://{controlPlaneHost}/v1/admin/retention/audit-events/purge', { method: 'POST', headers: { "X-B3IQ-Admin-Token": "YOUR_API_KEY", "Content-Type": "application/json" }, body: JSON.stringify({ "older_than_days": 365, "dry_run": false, "confirm": "string" })});const data = await response.json();console.log(data);
200
Response
{ "object": "b3iq.admin.audit_retention_purge", "status": "dry_run", "retention_policy": "admin_audit_events_v1", "eligible_access_event_count": 123, "eligible_command_event_count": 123, "eligible_approval_event_count": 123, "eligible_total_event_count": 123, "purged_access_event_count": 123, "purged_command_event_count": 123, "purged_approval_event_count": 123, "purged_total_event_count": 123, "older_than_days": 123, "cutoff_created_before": "2024-01-01T00:00:00Z", "purged_at": "2024-01-01T00:00:00Z"}
API Playground
Try this endpoint
POST
/v1/admin/retention/audit-events/purge
