Skip to main content
Refer to Audit events concept for how the trail is shaped.

Overview

Audit v1 is the durable evidence trail for governed infrastructure. Stream Live Events shows the same record in real time. Export delivers retained history downstream. The typical workflow is:
  1. Query events with class, actor, resource, correlation, or payload filters.
  2. Get an event by ID when you need the full envelope.
  3. List or get an activity chain, or emit an activity_id for a run.

Requirements

Before you begin:
  • Authenticate to Dome and select a workspace
  • Have audit events in the workspace, or emit activity so chains appear

Permissions

Audit reads require platform permissions. People and scoped API keys query the trail. Agent credentials are not the usual path for investigation. All workspace roles can query events, get an event by ID, and list or get activity chains with audit.view. Live streaming on Stream Live Events uses the same permission. Batch and scheduled delivery live under Export Data.

Query events

Query recent audit events. The default page returns the latest 50. Combine class, result, actor, resource, correlation, payload, and time filters to narrow the trail.
Requires audit.view.
Common flags: --limit, --types, --classes, --results, --agent-id, --since, --until, and repeatable --payload-filter. Full flags: refer to the CLI, MCP, and API references in the callouts below.
Reference: dome audit query
The response returns matched events plus a cursor. CLI, MCP, and dashboard use short enum tokens. The raw API uses full constants. Refer to enum rendering reference.
The pre-v1 total counter is gone. Use the cursor to walk the full result set.

Paginate results

Each response includes next_page_token. An empty token means the page was the last one.

Filter by class and result

Use class and result together to find denials, security signals, or audit access. Refer to event classes reference for the catalog.

Filter by actor and producer

Slice by who acted and which service emitted the event.
For a Gateway, use producer_gateway_id through the QueryEvents API.

Filter by resource

Reconstruct a request chain

Filter on a trace_id to return events from one request. Refer to correlation reference for the trace_id, operation_id, and parent_event_id contract.

Filter by payload

Apply payload filters to a query.
Use the JSON form for exists:
mcp.tool_call.* and llm.model_call.* payloads do not include request arguments by default. Contact support to enable argument capture on a workspace. Cedar rules still evaluate resource.arguments.<key>.

Filter by time range

Get event

Retrieve a single audit event by ID. Scope is derived from the caller’s session. There is no workspace_id argument.
Requires audit.view.
Reference: dome audit get
Governing decision events that applied a loaded Rule bundle include decision provenance in the payload (bundle_etag, contributing_bundles, rule_id). The dashboard decision explainer deep-links those bundles to /rules/bundles?scope=<kind>&scopeId=<id>.

List activity chains

List activity chains in the active workspace. A chain is listed when any of its events matches the filter. Summary counts reflect the full chain. Refer to activity chains reference for their contract.
Requires audit.view.

Get activity chain

Retrieve every event in one activity chain. Pass an activity_id to QueryEvents (or dome audit chain) to return events in cursor order.
Reference: dome audit chain

Emit activity chain

Set activity_id on the emit side so events from one unit of work correlate. Pick an ID that maps to that unit, such as a case ID, job run, or conversation UUID. Chains are workspace-local, so human-meaningful IDs are safe.
Set --activity (or DOME_ACTIVITY_ID) so every Connect RPC in the run carries X-Dome-Activity-Id.
--activity overrides DOME_ACTIVITY_ID. There is no implicit mint.

Next steps