recovery.incident_resolved

An open incident closed — a later probe found the thing healthy again, or a recovery replaced it.

When this fires

An incident resolves in one of two ways: a later probe finds the account, bot or channel healthy again (the creator gave the bot its rights back, the platform lifted a restriction), or a recovery replaced the broken thing, in which case resolved_by_operation_id names it. Either way the incident row is marked resolved and this event fires once.

Required ability

project-recovery:view — token must carry this at mint time to subscribe an endpoint to this event.

Payload

{
  "id": "evt_01HX...",
  "type": "recovery.incident_resolved",
  "created_at": "2026-09-12T03:19:42Z",
  "api_version": "2026-05-01",
  "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",
  "data": {
    "incident_id": "6f1e9b27-4c3a-4d58-9e02-b7a1c5d38f64",
    "kind": "resources",
    "connector": "telegram",
    "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",
    "resource_id": "b73c5f21-9d80-4a6e-8215-4f70ce13a9d6",
    "resolved_at": "2026-09-12T03:19:42Z",
    "resolved_by_operation_id": "9a4d2e71-5b38-4c6f-8e12-3d7c9b0a5f21"
  }
}

Field reference

FieldTypeNotes
idstring ULIDUnique event id, prefixed evt_. Use for idempotent processing.
typestringAlways recovery.incident_resolved for this event.
created_atISO 8601 timestampServer-side emission time.
api_versionstringWebhook API contract version.
project_idstring UUID | nullProject this event belongs to; null for an account incident.
data.incident_idstring UUIDThe incident that closed.
data.kindstringaccount, bot or resources.
data.connectorstring | nullThe connector the thing lives on.
data.project_idstring UUID | nullThe project, or null for an account incident.
data.resource_idstring UUID | nullThe channel or group, for resources incidents.
data.resolved_atISO 8601 timestampWhen it closed.
data.resolved_by_operation_idstring UUID | nullThe recovery that fixed it, or null when a probe simply found it healthy again.

Caveats

  • A bot relink resolves every open bot incident the project had, whichever bot row each named: expect one event per incident.
  • Resolution says the ledger no longer sees a problem; it does not say members have been re-admitted. Follow recovery.operation_completed and the roll call for that.

How is this guide?

On this page

Subscriby is a product designed by you — for you.

No boardroom full of executives deciding what we ships next. Our roadmap always shaped by you with your feedback.

Share feedback or a request