{
  "updated": "2026-10-24T14:00:00Z",
  "overall": "operational",
  "uptime12Months": "99.97%",
  "components": [
    {
      "id": "api",
      "name": "API",
      "state": "operational",
      "uptime90": "99.99%",
      "degradedDays": [
        55
      ],
      "outageDays": []
    },
    {
      "id": "ingestion",
      "name": "Data ingestion",
      "state": "operational",
      "uptime90": "99.96%",
      "degradedDays": [
        83
      ],
      "outageDays": []
    },
    {
      "id": "alerts",
      "name": "Alert delivery",
      "state": "operational",
      "uptime90": "99.97%",
      "degradedDays": [
        36
      ],
      "outageDays": []
    },
    {
      "id": "app",
      "name": "Web application",
      "state": "operational",
      "uptime90": "100%",
      "degradedDays": [],
      "outageDays": []
    },
    {
      "id": "webhooks",
      "name": "Webhooks",
      "state": "operational",
      "uptime90": "99.98%",
      "degradedDays": [],
      "outageDays": []
    }
  ],
  "incidents": [
    {
      "date": "2026-09-18",
      "title": "Delayed alert delivery to some Slack channels",
      "component": "Alert delivery",
      "duration": "24 minutes",
      "summary": "A change to how we batch outgoing messages delayed some Slack alerts by up to 9 minutes. We reverted the change and added a delivery delay check that pages the on-call engineer after 2 minutes."
    },
    {
      "date": "2026-08-30",
      "title": "Elevated API latency",
      "component": "API",
      "duration": "41 minutes",
      "summary": "A slow database query raised median API latency from 90 ms to 600 ms. We added an index and a query time limit. No requests failed."
    },
    {
      "date": "2026-08-02",
      "title": "Ingestion backlog in the EU region",
      "component": "Data ingestion",
      "duration": "1 hour 12 minutes",
      "summary": "A collector restart left run events queued for about an hour. All events were processed in order and no data was lost. Freshness checks were paused during the backlog to avoid false alerts."
    }
  ]
}