galena
Reference

Webhook payloads

Headers and body of every outgoing webhook.

See Webhooks for adding an endpoint and verifying signatures.

Headers

HeaderValue
content-typeapplication/json
user-agentGalena-Webhooks/1 (+https://github.com/astrlme/galena)
webhook-idThe delivery's id; the same on every retry of one delivery. Test sends start with test_.
webhook-timestampWhen this attempt was signed, in Unix seconds
webhook-signaturev1, and the base64 HMAC-SHA256 of {webhook-id}.{webhook-timestamp}.{body}

Body

{
  "type": "incident.updated",
  "timestamp": "2026-10-02T09:41:12.004Z",
  "data": {
    "kind": "incident_updated",
    "eventId": "0199a6d9-2c41-7e0b-8d3a-6f2e1c9b4a70",
    "page": { "name": "Acme", "url": "https://status.example.com" },
    "title": "Elevated API errors",
    "status": "identified",
    "impact": "major",
    "components": [
      { "id": "0199a1f0-5b2e-7a44-9c1d-3e8f7a6b5c40", "name": "API", "status": "partial_outage" }
    ],
    "body": "We found the cause: a bad deploy. We're rolling it back. Next update by 10:00 UTC.",
    "startsAt": "2026-10-02T09:14:03.120Z",
    "endsAt": null,
    "occurredAt": "2026-10-02T09:41:12.004Z",
    "url": "https://status.example.com/incidents/0199a6c2-7d1e-7c3a-9f1b-2b4c5d6e7f80/"
  }
}
FieldMeaning
typeThe event, with a dot: see the table below
timestampWhen the change happened, the same as data.occurredAt
data.kindThe event, with an underscore
data.eventIdThe event's id; one event can reach many endpoints
data.pageThe status page's name and address
data.titleThe incident's or the window's title
data.statusThe incident's status (investigating, identified, monitoring, resolved, postmortem) or the window's (scheduled, in_progress, verifying, completed)
data.impactnone, minor, major or critical; null for maintenance
data.componentsEach affected component's id, name and the status the incident gives it; the status is null for maintenance
data.bodyThe latest update, or the window's message, in the page's Markdown
data.startsAtWhen the incident started, or when the window starts
data.endsAtWhen the incident resolved, or when the window ends; null while an incident is open
data.occurredAtWhen this change happened
data.urlThe incident's page, or the status page for maintenance

Event types

typeSent when
incident.createdA published incident is created, or a draft is published
incident.updatedAn update is posted that doesn't resolve it
incident.resolvedThe incident is resolved
maintenance.scheduledA window is first scheduled
maintenance.startedA window starts
maintenance.completedA window ends
maintenance.cancelledA window is cancelled before it starts

New fields may be added to data; ignore fields you don't know. Values are snake_case and match Atlassian Statuspage's where Statuspage defines them.

On this page