Skip to content

Webhook event types

Event Fires when
run.failed A workspace×capability stream transitions healthy → failing — one alert per incident, not every failed run. 3 consecutive failed runs for the same workspace×capability fire once. A success in between resets the count. A platform-breaking failure (KingMinos storage outage) fires on the first failure.
run.recovered A previously failing stream starts succeeding again (failing → healthy) on its next successful run.
test.ping Delivered only by POST /v1/webhooks/{id}/test — not a subscription type. Ignores enabled_events.

Only system-level run failures reach the tracker: a run that fails outright (HTTP 5xx, storage errors, deadlines). Business misses stay HTTP 200 answers and vendor rate-limits or timeouts absorbed by the waterfall are not failures. The first alert after the threshold carries consecutive_failures: 3. A storage outage fires immediately and carries the running count — 1 from a clean state, higher if earlier failures had already started counting.

Every run.failed payload pairs a readable reason (≤240 characters, email addresses redacted, never raw JSON) with a remediation — the exact fix, ending in a docs link.

These names are held in the namespace. Subscribing to one returns 400 with the list of available types. They are not delivered yet — do not build against them:

  • billing.frozen, billing.unfrozen
  • credits.exhausted, credits.low
  • vendor.uptime.changed
  • run.completed (KingMinos answers synchronously; a per-run delivery tranche would be opt-in and capped)