{
  "schema": 1,
  "updated_at": "2026-09-12T10:24:55.607Z",
  "overall": {
    "status": "operational",
    "description": "All systems operational"
  },
  "groups": [
    {
      "key": "core",
      "name": "Core services",
      "components": [
        {
          "key": "api",
          "name": "Web service",
          "description": "The API that every Flambe client talks to.",
          "status": "operational",
          "status_label": "Operational",
          "detail": "HTTP 200",
          "latency_ms": 82,
          "metrics": null
        }
      ]
    },
    {
      "key": "imports",
      "name": "Recipe imports",
      "components": [
        {
          "key": "imports-web",
          "name": "Recipe import — links",
          "description": "Importing from a URL: recipe sites, Instagram, YouTube, TikTok.",
          "status": "operational",
          "status_label": "Operational",
          "detail": "No backlog",
          "latency_ms": null,
          "metrics": {
            "oldest_message_seconds": 0,
            "queued": 0
          }
        },
        {
          "key": "imports-text",
          "name": "Recipe import — text",
          "description": "Importing from pasted or uploaded text.",
          "status": "operational",
          "status_label": "Operational",
          "detail": "No backlog",
          "latency_ms": null,
          "metrics": {
            "oldest_message_seconds": 0,
            "queued": 0,
            "failed": 0
          }
        },
        {
          "key": "imports-media",
          "name": "Recipe import — photos",
          "description": "Importing from photographs, including cookbook pages.",
          "status": "operational",
          "status_label": "Operational",
          "detail": "No backlog",
          "latency_ms": null,
          "metrics": {
            "oldest_message_seconds": 0,
            "queued": 0,
            "failed": 0
          }
        }
      ]
    },
    {
      "key": "clients",
      "name": "Apps",
      "components": [
        {
          "key": "www",
          "name": "Website",
          "description": "flambe.dev",
          "status": "operational",
          "status_label": "Operational",
          "detail": "HTTP 401",
          "latency_ms": 73,
          "metrics": null
        },
        {
          "key": "portal",
          "name": "Web app",
          "description": "app.flambe.dev",
          "status": "operational",
          "status_label": "Operational",
          "detail": "HTTP 200",
          "latency_ms": 61,
          "metrics": null
        },
        {
          "key": "mobile",
          "name": "Mobile app",
          "description": "iOS app, including over-the-air updates.",
          "status": "operational",
          "status_label": "Operational",
          "detail": "HTTP 204",
          "latency_ms": 101,
          "metrics": null
        }
      ]
    }
  ],
  "history": {
    "api": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 912,
        "degraded": 0,
        "down": 2,
        "uptime": 99.781
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 625,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      }
    ],
    "imports-web": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 914,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 625,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      }
    ],
    "imports-text": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 914,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 625,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      }
    ],
    "imports-media": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 914,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 625,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      }
    ],
    "www": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 914,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 624,
        "degraded": 1,
        "down": 0,
        "uptime": 100
      }
    ],
    "portal": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 914,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 625,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      }
    ],
    "mobile": [
      {
        "date": "2026-09-11",
        "checks": 914,
        "healthy": 914,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      },
      {
        "date": "2026-09-12",
        "checks": 625,
        "healthy": 625,
        "degraded": 0,
        "down": 0,
        "uptime": 100
      }
    ]
  },
  "uptime_90d": {
    "api": 99.87,
    "imports-web": 100,
    "imports-text": 100,
    "imports-media": 100,
    "www": 100,
    "portal": 100,
    "mobile": 100
  },
  "incidents": [
    {
      "id": "2026-09-11T18:26:55.521Z#api",
      "component": "api",
      "component_name": "Web service",
      "title": "Web service: Major outage",
      "impact": "major_outage",
      "started_at": "2026-09-11T18:26:55.521Z",
      "resolved_at": "2026-09-11T18:28:55.546Z",
      "duration_seconds": 120,
      "updates": [
        {
          "status": "investigating",
          "at": "2026-09-11T18:26:55.521Z",
          "body": "Unreachable: fetch failed"
        },
        {
          "at": "2026-09-11T18:28:55.546Z",
          "status": "resolved",
          "body": "HTTP 200"
        }
      ]
    }
  ]
}