MethodPathSummaryAuth
GET/v1/audit-logsList rendered operation log rows, newest firstSession
GET/v1/audit-logs/categoriesEvent categories with labels and default retention daysSession
GET/v1/audit-logs/exportExport the filtered rows as UTF-8 CSV (at most 10000 rows; the export itself is audited as system.audit_log.export)Session

Contract file:api/control-audit-logs.openapi.yaml

Operation details

GET /v1/audit-logs

List rendered operation log rows, newest first

operationId
listAuditLogs
Auth
  • Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
Required permissions

All of:platform.admin identity.self.read

Parameters

listAuditLogs Parameters
NameInTypeRequiredDescription
categoryquerystring | const allNo—
exclude_categoryquerystringNoDrop one category (the admin log center's operation tab excludes auth)
scope_idquerystring(uuid)NoPlatform administrators only; tenants may only pass their own scope
sincequerystring(date-time)No—
untilquerystring(date-time)No—
actorquerystringNoUsername (exact
actor_user_idquerystring(uuid)No—
source_ipquerystringNo—
resource_typequerystringNo—
resource_idquerystringNo—
resultquerystring: success / denied / failureNo—
actionquerystringNo—
cursorquerystringNo—
limitqueryintegerNo—
tzquerystringNoIANA time zone for the rendered time (default Asia/Shanghai)
langquerystringNoOverrides Accept-Language

Responses

listAuditLogs Responses
StatusDescription
200One page of rows

Fields:items: array<Row> next_cursor?: string

400Invalid filter (audit_log_invalid_request)
401Unauthenticated
403Permission denied
503Log storage unavailable (audit_log_unavailable)

What to do on failure

  • 400 Fix the parameters or body per the field list; do not retry unchanged.
  • 401 Check the credential format and whether it expired or was rotated.
  • 403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.
  • 503 A dependency is unavailable: retry later with the original Idempotency-Key.

↑ Back to list

GET /v1/audit-logs/categories

Event categories with labels and default retention days

operationId
listAuditLogCategories
Auth
  • Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
Required permissions

All of:platform.admin identity.self.read

Parameters

listAuditLogCategories Parameters
NameInTypeRequiredDescription
langquerystringNoOverrides Accept-Language

Responses

listAuditLogCategories Responses
StatusDescription
200Categories in display order

Fields:items: array<CategoryInfo>

401Unauthenticated
403Permission denied

What to do on failure

  • 401 Check the credential format and whether it expired or was rotated.
  • 403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.

↑ Back to list

GET /v1/audit-logs/export

Export the filtered rows as UTF-8 CSV (at most 10000 rows; the export itself is audited as system.audit_log.export)

operationId
exportAuditLogs
Auth
  • Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
Required permissions

All of:platform.admin identity.self.read

Responses

exportAuditLogs Responses
StatusDescription
200CSV file
400Invalid filter (audit_log_invalid_request)
401Unauthenticated
403Permission denied
503Log storage or audit unavailable (audit_log_unavailable)

What to do on failure

  • 400 Fix the parameters or body per the field list; do not retry unchanged.
  • 401 Check the credential format and whether it expired or was rotated.
  • 403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.
  • 503 A dependency is unavailable: retry later with the original Idempotency-Key.

↑ Back to list