Skip to main content
Operate exposes two event surfaces for operators:
  1. Notification channels for routed operational alerts.
  2. Audit logs and polling for investigating operations and reconciling state.
Use notification channels for incident delivery and audit records for investigation. Neither guarantees a complete execution ledger.

Notification Channels

Create a channel, then bind it to the vaults that should send alerts through Vault Settings. These are upstream route references, not self-service automation requests; see Authentication.
Confirm which alert categories your configured channel delivers:
  • Upkeep shortfall or activation loss.
  • PPS staleness.
  • Failed keeper runs.
  • Session-key readiness changes.
  • Emergency pause / unpause.
  • Emergency liquidity exit arm / stop.
  • Merkle generation or publish failure.
  • Repeated OMS execution failure.
See Vault Settings for the operator flow.

Audit Logs as an Event Stream

The authenticated audit endpoints record manager and configuration actions:
Rows use id, created_at, action, resource_type, actor, and status, with optional resource_id, details, and correlation_id. Validate the deployed response envelope in your approved integration before reading rows or pagination metadata. Use export for a point-in-time audit artifact, not as proof of transaction settlement.

Polling Pattern

  1. Fix start_time and end_time for the scan, with an overlap for delayed arrivals.
  2. Traverse all pages with limit and offset within a bounded request budget. On any error, invalid response, or budget exhaustion, retain the previous checkpoint.
  3. Deduplicate by event id and process the complete window durably before advancing the watermark to the greatest observed created_at. An empty window leaves it unchanged; never advance to local wall-clock time after one page.
  4. Periodically replay a wider window and reconcile against exports and current state.
Results are ordered by created_at DESC, without a stable timestamp-plus-ID cursor or cross-page snapshot. Concurrent inserts, equal timestamps, and arrivals outside the overlap can still cause omissions; offset polling is not lossless ingestion.

State Polling Map

See Monitoring Vault State for field checks and unknown-state handling.