Skip to content

Status Reference ​

status.chainabit.com is the public status surface for the Chainabit API. All endpoints are anonymous, cache-friendly, and return the standard response envelope.

Base URL ​

https://status.chainabit.com/api/v1

Endpoints ​

MethodPathPurpose
GET/statusPlatform summary
GET/status/servicesService list
GET/status/services/:slugService detail
GET/status/componentsComponent list
GET/status/incidentsIncident feed
GET/status/incidents/:idIncident detail
GET/status/maintenanceMaintenance windows
GET/status/snapshots/:dateHistorical daily snapshot
GET/status/uptime/:windowUptime rollup

GET /status ​

Returns the current platform summary: overall status, service cards, top incidents, and active maintenance.

Response ​

json
{
  "data": {
    "headline": "All systems operational",
    "status": "operational",
    "indicator": "operational",
    "updatedAt": "2026-10-01T09:14:38.372Z",
    "lastCheckedAt": "2026-10-01T09:14:38.372Z",
    "services": [
      {
        "slug": "api",
        "name": "Chainabit API",
        "status": "operational",
        "indicator": "operational",
        "openIncidents": 0,
        "activeMaintenance": false,
        "uptime": {
          "24h": 99.9,
          "7d": 99.9,
          "30d": 99.9,
          "90d": 99.9,
          "1y": 99.9
        }
      }
    ],
    "incidents": [],
    "maintenance": []
  }
}

status values: operational · degraded_performance · partial_outage · major_outage · maintenance


GET /status/services ​

Returns the list of public services ordered by sort_order.

Response ​

json
{
  "data": [
    {
      "id": "uuid",
      "slug": "api",
      "name": "Chainabit API",
      "description": "Primary API surface for Chainabit platform requests.",
      "current_status": "operational",
      "indicator": "operational",
      "payload": {
        "slug": "api",
        "status": "operational",
        "openIncidents": 0,
        "activeMaintenance": false
      },
      "sort_order": 0,
      "is_public": true,
      "created_at": "2026-03-25T00:00:00.000Z",
      "updated_at": "2026-03-25T00:00:00.000Z"
    }
  ]
}

GET /status/services/:slug ​

Returns a service with its components, open incidents, active maintenance, and uptime windows.

Path parameters ​

ParameterTypeDescription
slugstringService slug (e.g. api)

Response ​

json
{
  "data": {
    "service": {
      "id": "uuid",
      "slug": "api",
      "name": "Chainabit API",
      "description": "Primary API surface for Chainabit platform requests.",
      "current_status": "operational",
      "indicator": "operational"
    },
    "components": [
      {
        "id": "uuid",
        "slug": "api-health",
        "name": "API Health Checks",
        "current_status": "operational"
      }
    ],
    "incidents": [],
    "maintenance": [],
    "uptime": {
      "24h": 100,
      "7d": 99.98,
      "30d": 99.95,
      "90d": 99.9,
      "1y": 99.85
    }
  }
}

GET /status/components ​

Returns all public components. Optionally filter by service.

Query parameters ​

ParameterTypeRequiredDescription
serviceSlugstringNoFilter components to a specific service

Response ​

json
{
  "data": [
    {
      "id": "uuid",
      "slug": "api-health",
      "name": "API Health Checks",
      "current_status": "operational",
      "indicator": "operational",
      "service_id": "uuid"
    }
  ]
}

GET /status/incidents ​

Returns the public incident feed, newest first.

Query parameters ​

ParameterTypeRequiredDescription
offsetnumberNoNumber of incidents to skip (default: 0)
limitnumberNoItems per page (default: 20, max: 100)

Response ​

json
{
  "data": [
    {
      "id": "uuid",
      "slug": "api-degraded-2026-03-25",
      "title": "API degraded performance",
      "status": "resolved",
      "impact": "minor",
      "severity": null,
      "description": "Elevated error rates observed.",
      "started_at": "2026-03-25T10:00:00.000Z",
      "resolved_at": "2026-03-25T11:30:00.000Z",
      "updates": []
    }
  ],
  "meta": {
    "total": 1,
    "limit": 20,
    "offset": 0
  }
}

status values: investigating · identified · monitoring · resolved · postmortem_readyimpact values: minor · partial · major


GET /status/incidents/:id ​

Returns a single incident with its full update timeline.

Path parameters ​

ParameterTypeDescription
idstringIncident UUID

Response ​

json
{
  "data": {
    "id": "uuid",
    "slug": "api-degraded-2026-03-25",
    "title": "API degraded performance",
    "status": "resolved",
    "impact": "minor",
    "started_at": "2026-03-25T10:00:00.000Z",
    "resolved_at": "2026-03-25T11:30:00.000Z",
    "updates": [
      {
        "id": "uuid",
        "status": "investigating",
        "message": "We are investigating elevated error rates.",
        "author_name": "Chainabit Ops",
        "created_at": "2026-03-25T10:05:00.000Z"
      },
      {
        "id": "uuid",
        "status": "resolved",
        "message": "Issue resolved. Root cause was a misconfigured upstream proxy.",
        "author_name": "Chainabit Ops",
        "created_at": "2026-03-25T11:30:00.000Z"
      }
    ]
  }
}

Returns 404 with error.code: "not_found" when the incident does not exist.


GET /status/maintenance ​

Returns upcoming and active maintenance windows.

Response ​

json
{
  "data": [
    {
      "id": "uuid",
      "slug": "db-upgrade-2026-03-26",
      "title": "Database upgrade",
      "status": "scheduled",
      "starts_at": "2026-03-26T02:00:00.000Z",
      "ends_at": "2026-03-26T04:00:00.000Z",
      "service_id": "uuid"
    }
  ]
}

status values: scheduled · in_progress · completed · cancelled


GET /status/snapshots/:date ​

Returns the historical daily snapshot for the given date.

Path parameters ​

ParameterTypeDescription
datestringISO date in YYYY-MM-DD format

Example request ​

bash
curl https://status.chainabit.com/api/v1/status/snapshots/2026-10-01

Response ​

json
{
  "data": {
    "snapshotDate": "2026-10-01",
    "status": "operational",
    "indicator": "operational",
    "headline": "All systems operational",
    "services": [],
    "incidents": [],
    "maintenance": []
  }
}

Returns 404 with error.code: "not_found" when no snapshot exists for the requested date.


GET /status/uptime/:window ​

Returns the uptime rollup for a given time window.

Path parameters ​

ParameterTypeDescription
windowstringOne of: 24h · 7d · 30d · 90d · 1y

Example request ​

bash
curl https://status.chainabit.com/api/v1/status/uptime/30d

Response ​

json
{
  "data": {
    "window": "30d",
    "scopeType": "platform",
    "scopeKey": "global",
    "uptimePercent": 99.95,
    "downtimeMinutes": 21.6,
    "incidentCount": 2,
    "computedAt": "2026-10-01T00:00:00.000Z",
    "dailyHistory": [
      {
        "date": "2026-10-01",
        "uptimePercent": 99.95
      }
    ]
  }
}

Cache headers ​

Every response includes:

HeaderValue
Cache-Controlpublic, max-age=30, stale-while-revalidate=300
ETagSHA-1 of the serialized payload
Last-ModifiedProjection timestamp

Use conditional requests (If-None-Match, If-Modified-Since) to avoid transferring unchanged payloads.


Client guidance ​

  • Use /status for the landing page hero.
  • Use /status/services/:slug for per-service drilldown pages.
  • Use /status/snapshots/:date for date-based history and SEO.
  • Use /status/uptime/:window for compact percentage widgets.
  • Prefer stale-while-revalidate or cache-aware polling — avoid request bursts.

Built with purpose.