Get Public Status Page

GET /api/status-pages/public/:slug or GET /api/status-pages/public/by-id/:id

Get Public Status Page

Two endpoints serve the public status page view:

  • GET /api/status-pages/public/:slug — lookup by URL slug
  • GET /api/status-pages/public/by-id/:id — lookup by numeric ID

No authentication required for visibility: public pages. Customer-member authentication required for visibility: customer_members_only pages.

Response

{
  "statusPage": {
    "id": 1,
    "organizationId": 1,
    "customerId": 5,
    "name": "Production Status",
    "slug": "production-status",
    "description": "Real-time status of our production services",
    "visibility": "public",
    "isPublished": true,
    "showRecentIncidents": true,
    "showRecentMaintenance": true,
    "overallState": "operational",
    "createdAt": "2026-01-15T10:00:00.000Z",
    "updatedAt": "2026-01-15T10:00:00.000Z"
  },
  "websites": [
    {
      "id": 101,
      "name": "Main Site",
      "url": "https://example.com",
      "status": "active",
      "state": "operational",
      "inMaintenance": false,
      "openIncidents": 0,
      "lastCheckedAt": "2026-05-01T12:00:00.000Z"
    }
  ],
  "maintenanceHistory": [],
  "incidentHistory": []
}

state values: operational, warning (SSL-only incidents), degraded (non-SSL incidents), maintenance (active maintenance window).

overallState is the most severe state across all websites.

Common errors

  • 404 Not found when the status page does not exist or is not published
  • 403 Forbidden for customer_members_only pages when the user is not a member