Runtime — Audit Trail

Every action.
Logged. Always.

Every action your agent calls is logged with the full execution context — verb, inputs, outputs, duration, governance decision, execution ID, and dry run status. The audit trail is immutable. It cannot be disabled. It fires on every call, including failed ones, blocked ones, and dry runs.

100%
Actions logged — including failures
Immutable.
Records cannot be deleted or altered
0-config
Always on from your first API call
API Docs → Get API Access
What gets logged

Full execution context.
On every call.

The audit record is written after every action call — whether it succeeded, failed, was blocked by policy, or was intercepted in dry run. Every field you need to reconstruct exactly what happened and why.

audit log entry
# Written after every action call
{
  "execution_id": "exec_9xk2p",
  "verb": "stripe:create_refund",
  "provider": "stripe",
  "risk_level": "HIGH",
  "governance_status": "approved",
  "dry_run": false,
  "idempotent": false,
  "args": {
    "amount": 50,
    "charge_id": "ch_abc123"
  },
  "result": {
    "refund_id": "re_xyz789",
    "status": "succeeded"
  },
  "duration_ms": 187,
  "tenant_id": "ten_abc",
  "credential_masked": true,
  "timestamp": "2026-04-07T14:32:01Z"
}
Immutable — no delete, no edit
Audit records are written once and cannot be altered or deleted. The trail is authoritative. Built for compliance teams that need to know exactly what happened.
Credentials always masked
The credential_masked: true flag confirms the secret was stripped before the record was written. What authorized the call is logged — not the secret itself.
Failed and blocked calls logged too
Audit records are written even when an action is blocked by policy, fails at the provider, or is caught by the idempotency fence. The trail covers every call — not just successful ones.
Query via API
Pull execution records by execution_id, verb, provider, tenant, date range, or governance_status. Build your own compliance dashboards on top of the audit API.
Why it matters

Production AI needs
an authoritative record.

When something goes wrong — and something always goes wrong — you need to know exactly what your agent did, in what order, with what data, and what the governance decision was. The audit trail is that record. Always.

Incident investigation
A refund fired unexpectedly. Pull the execution record by execution_id and see exactly what your agent called, what arguments were passed, what governance decision was made, and when.
Compliance reporting
Auditors need to know what your AI did. Pull records by date range, filter by provider or verb, and export. The trail covers every action — not just the ones that succeeded.
Agent performance monitoring
Track action duration, failure rates, governance block rates, and idempotency hit rates across your agent's executions. The audit trail is your observability layer for production AI.

Know what your agent
did. Always.

Immutable. Zero configuration. Fires on every call. Get API access and have a full audit trail from your first execution.

API Docs → ← Back to Developers