payload / data field schemas are defined per event type in the product API and dashboard catalog.
For how the one trail works, see the Audit events concept. To query and reconstruct events, see Audit events.
Audit v1
Audit v1 is the durable workspace event trail. Every query, stream, export, and ingest record uses this envelope and type catalog.Envelope
Every audit event uses this envelope. Envelope fields are filterable without inspectingpayload. The shape is identical across CLI, MCP, SDK, dashboard, stream, query, and export.
The fields above are the complete customer envelope. Internal pipeline metadata is not returned.
Enum rendering
Enum fields (event_class, result, actor.kind, scope.kind, primary_resource.kind, request_surface.surface) render in one of two forms. Filters use the same form the surface returns.
A short token is the constant with its type prefix stripped and lowercased. CLI flags and MCP arguments take short tokens. API request fields take full constants or their integer values.
Network and transport context
Configuration events carry network origin underrequest_surface.
OCSF exports map
source_ip to src_endpoint.ip; user_agent and http_method are carried under unmapped. CEF exports map them to src, requestClientApplication, and requestMethod.
source_ip is the rightmost trusted entry of X-Forwarded-For + [connecting peer]. DOME_TRUSTED_HOPS on the api-server and gateway is the number of appending reverse-proxy hops in front of Dome.
The default
1 assumes one AWS ALB in XFF append mode. The ALB appends the connecting client on the right without stripping a caller-supplied X-Forwarded-For, so the rightmost entry is the only edge-guaranteed value.
Caller authentication context
actor includes how the immediate principal authenticated.
Act-as end-user attributes
When an agent acts on behalf of an end user, the correspondingidentity_chain hop carries these fields. Producers cap each list at 32 entries.
Correlation
An activity chain is the set of audit events that share one
activity_id within a workspace. Chains are computed at read time; there is no stored chain object.
activity_id can be set by a CLI run (--activity or DOME_ACTIVITY_ID), an SDK session, an agent request header, or Dome for browser and assistant threads. Chain reads return only the active workspace’s slice, so human-meaningful IDs (case-12345) are safe to use. activity_trust is provenance metadata, not a grouping key.
Event classes
Event types
Types byevent_class.
governing
Every
llm.model_* event carries provider — the vendor identity from the connection. Filter on provider to attribute spend, latency, or denial rate per vendor.
Denials on the LLM path may carry data.reason:
Reasons are short, snake_case, and stable. Treat unknown values as a generic deny. Runtime handling is on Develop. Ingress behavior is on the LLM gateway concept.
state_change
security
Not in the audit catalog:
identity.session.created, identity.session.switched, and identity.session.rotated (operational telemetry only — session rotation is a background ~5-minute token refresh).
Login, token issuance, and impersonation start fail closed until their audit event is durable. Forced terminations complete first and audit with retry so an unavailable audit store cannot prevent revocation.
audit_access
Decision provenance
These types stamp policy snapshot fields intopayload when a bundle was loaded: authorization.decision, mcp.tool_call.completed, mcp.tool_call.attempted, llm.model_call.completed, mcp.tool_result.filtered, llm.model_result.filtered.
Events with no loaded bundle omit these fields. The dashboard decision explainer deep-links contributing bundles to
/rules/bundles?scope=<kind>&scopeId=<id>; the same fields are available on dome audit get, dome_audit_get_event, and QueryEvents.
Payload filters
Payload filters match fields inside the event-specific payload (for examplemcp.tool_call.completed.tool). Each filter is scoped to one event_type and one field. Non-filterable fields return a validation error.
Stream and query share this vocabulary.
Ingest
Delivery semantics: at-least-once.
Webhooks
Webhooks deliver a signed public projection of selected events for automation. The wire shape and type catalog differ from Audit v1 even when type strings overlap. Operating limits and retry status handling are on Webhooks.Envelope
Delivery headers
Bundles
Subscriptions accept any combination of the catalog types. Bundles are presets:Event types
Identity and access
platform.api_key.created, platform.api_key.revoked, agent.api_key.created, agent.api_key.rotated, agent.api_key.revoked, workspace.role.assigned, workspace.role.removed, verification.provider.created, verification.provider.updated, verification.provider.deleted
Agent lifecycle
agent.registered, agent.updated, agent.activated, agent.suspended, agent.reactivated, agent.revoked, agent.deleted, agent.enrolled
Policy and configuration
workspace.config.changed, workspace.freshness_window.updated, authorization.rule_bundle.deployed, authorization.rule_bundle.rolled_back, authorization.rule_bundle.deleted
Gateway and connections
gateway.connection.created, gateway.connection.updated, gateway.connection.deleted, mcp.tool_catalog.sync.completed, mcp.tool.status_changed, gateway.created, gateway.updated, gateway.deleted, gateway.tool_member.added, gateway.tool_member.removed, gateway.tool_source_member.added, gateway.tool_source_member.removed, gateway.llm_pool_member.added, gateway.llm_pool_member.removed, gateway.llm_model_member.added, gateway.llm_model_member.removed
Security decisions
mcp.tool_call.completed, mcp.tool_result.filtered, llm.output.filtered, access.denied
These fire per governed request. Point them at a log sink rather than a chat channel, and narrow with subscription filters.
Audit exports
audit.export.completed, audit.export.failed
Webhooks administration
eventing.test, eventing.destination.created, eventing.destination.updated, eventing.destination.deleted, eventing.subscription.created, eventing.subscription.updated, eventing.subscription.disabled, eventing.subscription.deleted
Audit v1 name map
Where names diverge, the webhook wire name is authoritative for webhook deliveries.