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/v1Endpoints
| Method | Path | Purpose |
|---|---|---|
GET | /status | Platform summary |
GET | /status/services | Service list |
GET | /status/services/:slug | Service detail |
GET | /status/components | Component list |
GET | /status/incidents | Incident feed |
GET | /status/incidents/:id | Incident detail |
GET | /status/maintenance | Maintenance windows |
GET | /status/snapshots/:date | Historical daily snapshot |
GET | /status/uptime/:window | Uptime rollup |
GET /status
Returns the current platform summary: overall status, service cards, top incidents, and active maintenance.
Response
{
"data": {
"headline": "All systems operational",
"status": "operational",
"indicator": "none",
"services": [
{
"id": "uuid",
"slug": "api",
"name": "Chainabit API",
"description": "Core REST API",
"current_status": "operational",
"indicator": "none",
"sort_order": 0,
"is_public": true
}
],
"incidents": [],
"maintenance": [],
"updated_at": "2026-03-25T00:00:00.000Z"
}
}status values: operational · degraded_performance · partial_outage · major_outage · maintenance
GET /status/services
Returns the list of public services ordered by sort_order.
Response
{
"data": [
{
"id": "uuid",
"slug": "api",
"name": "Chainabit API",
"description": "Core REST API",
"current_status": "operational",
"indicator": "none",
"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
| Parameter | Type | Description |
|---|---|---|
slug | string | Service slug (e.g. api) |
Response
{
"data": {
"id": "uuid",
"slug": "api",
"name": "Chainabit API",
"description": "Core REST API",
"current_status": "operational",
"indicator": "none",
"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
| Parameter | Type | Required | Description |
|---|---|---|---|
serviceSlug | string | No | Filter components to a specific service |
Response
{
"data": [
{
"id": "uuid",
"slug": "api-health",
"name": "API Health Checks",
"current_status": "operational",
"indicator": "none",
"service_id": "uuid"
}
]
}GET /status/incidents
Returns the public incident feed, newest first.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page | number | No | Page number (default: 1) |
limit | number | No | Items per page (default: 20, max: 100) |
Response
{
"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": {
"page": 1,
"limit": 20,
"total": 1
}
}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
| Parameter | Type | Description |
|---|---|---|
id | string | Incident UUID |
Response
{
"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"
}
]
}
}GET /status/maintenance
Returns upcoming and active maintenance windows.
Response
{
"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
| Parameter | Type | Description |
|---|---|---|
date | string | ISO date in YYYY-MM-DD format |
Example request
curl https://status.chainabit.com/api/v1/status/snapshots/2026-03-25Response
{
"data": {
"snapshot_date": "2026-03-25",
"scope_type": "platform",
"scope_key": "global",
"payload": {
"headline": "All systems operational",
"status": "operational",
"services": []
},
"computed_at": "2026-03-25T23:59:00.000Z"
}
}GET /status/uptime/:window
Returns the uptime rollup for a given time window.
Path parameters
| Parameter | Type | Description |
|---|---|---|
window | string | One of: 24h · 7d · 30d · 90d · 1y |
Example request
curl https://status.chainabit.com/api/v1/status/uptime/30dResponse
{
"data": {
"scope_type": "platform",
"scope_key": "global",
"window": "30d",
"uptime_percent": 99.95,
"downtime_minutes": 21.6,
"incident_count": 2,
"computed_at": "2026-03-25T00:00:00.000Z"
}
}Cache headers
Every response includes:
| Header | Value |
|---|---|
Cache-Control | public, max-age=30, stale-while-revalidate=300 |
ETag | SHA-1 of the serialized payload |
Last-Modified | Projection timestamp |
Use conditional requests (If-None-Match, If-Modified-Since) to avoid transferring unchanged payloads.
Client guidance
- Use
/statusfor the landing page hero. - Use
/status/services/:slugfor per-service drilldown pages. - Use
/status/snapshots/:datefor date-based history and SEO. - Use
/status/uptime/:windowfor compact percentage widgets. - Prefer
stale-while-revalidateor cache-aware polling — avoid request bursts.