Status API — Public Endpoints
All endpoints below are public and require no authentication. Responses include Cache-Control and ETag headers for client-side caching.
Base URL: /api/v1/status
Caching
All public endpoints return:
Cache-Control: public, max-age=<STATUS_PUBLIC_CACHE_SECONDS>, stale-while-revalidate=300
ETag: "<payload-hash>"
Last-Modified: <timestamp>Use If-None-Match with the ETag value to receive 304 Not Modified on unchanged data.
Endpoints
GET /status
Returns the full platform summary including all services, open incidents, and active maintenance.
Request
Authorization: None
No parameters.
Response
{
"data": {
"headline": "All Systems Operational",
"status": "operational",
"indicator": "operational",
"updatedAt": "2026-03-31T12:00:00.000Z",
"lastCheckedAt": "2026-03-31T11:59:45.000Z",
"services": [
{
"slug": "api-gateway",
"name": "API Gateway",
"status": "operational",
"indicator": "operational",
"openIncidents": 0,
"activeMaintenance": false,
"uptime": { "24h": 100, "7d": 99.95, "30d": 99.9, "90d": 99.85, "1y": 99.8 }
}
],
"incidents": [],
"maintenance": []
}
}Code Example
curl https://api.chainabit.com/api/v1/statusGET /status/services
Returns all public services ordered by sort_order.
Request
Authorization: None
No parameters.
Response
{
"data": [
{
"id": "uuid",
"slug": "api-gateway",
"name": "API Gateway",
"description": "Core REST API",
"current_status": "operational",
"indicator": "operational",
"sort_order": 1,
"is_public": true,
"created_at": "2026-01-01T00:00:00.000Z",
"updated_at": "2026-03-31T12:00:00.000Z"
}
]
}Code Example
curl https://api.chainabit.com/api/v1/status/servicesGET /status/services/:slug
Returns a single service with its components, recent incidents, maintenance windows, and uptime rollups.
Request
Authorization: None
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
slug | string | Service slug — from a List Services response's data[].slug |
Response
{
"data": {
"service": { "id": "uuid", "slug": "api-gateway", "name": "API Gateway", "..." },
"components": [ { "id": "uuid", "slug": "api-gateway-auth", "name": "Authentication", "..." } ],
"incidents": [],
"maintenance": [],
"uptime": { "24h": 100, "7d": 99.95, "30d": 99.9, "90d": 99.85, "1y": 99.8 }
}
}Code Example
curl https://api.chainabit.com/api/v1/status/services/$SERVICE_SLUGGET /status/components
Returns all public components. Optionally filter by service.
Request
Authorization: None
Query Parameters:
| Parameter | Type | Description |
|---|---|---|
serviceSlug | string | Filter components by service slug |
Response
{
"data": [
{
"id": "uuid",
"service_id": "uuid",
"slug": "api-gateway-auth",
"name": "Authentication",
"current_status": "operational",
"indicator": "operational",
"sort_order": 1,
"is_public": true
}
]
}Code Example
curl "https://api.chainabit.com/api/v1/status/components?serviceSlug=api-gateway"GET /status/incidents
Returns published incidents, most recent first.
Request
Authorization: None
No parameters.
Response
{
"data": [
{
"id": "uuid",
"slug": "elevated-error-rates-2026-03-31",
"title": "Elevated error rates on API Gateway",
"status": "resolved",
"impact": "partial",
"severity": "partial",
"description": "We observed elevated 5xx rates...",
"published": true,
"started_at": "2026-03-31T09:00:00.000Z",
"resolved_at": "2026-03-31T10:30:00.000Z",
"created_at": "2026-03-31T09:02:00.000Z",
"updated_at": "2026-03-31T10:30:00.000Z"
}
]
}Code Example
curl https://api.chainabit.com/api/v1/status/incidentsGET /status/incidents/:id
Returns a single incident by UUID.
Request
Authorization: None
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
id | uuid | Incident UUID — from a List Incidents response's data[].id |
Response
Single incident object (same shape as list item above).
Code Example
curl https://api.chainabit.com/api/v1/status/incidents/$INCIDENT_IDGET /status/maintenance
Returns published maintenance windows, most recent first.
Request
Authorization: None
No parameters.
Response
{
"data": [
{
"id": "uuid",
"slug": "database-migration-2026-04-01",
"title": "Database schema migration",
"status": "scheduled",
"starts_at": "2026-04-01T02:00:00.000Z",
"ends_at": "2026-04-01T04:00:00.000Z",
"published": true
}
]
}Code Example
curl https://api.chainabit.com/api/v1/status/maintenanceGET /status/snapshots/:date
Returns the daily status snapshot for a given date.
Request
Authorization: None
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
date | YYYY-MM-DD | Snapshot date |
Response
{
"data": {
"snapshotDate": "2026-03-30",
"status": "operational",
"indicator": "operational",
"headline": "All Systems Operational",
"services": [ { "..." } ],
"incidents": [],
"maintenance": []
}
}Code Example
curl https://api.chainabit.com/api/v1/status/snapshots/2026-03-30GET /status/uptime/:window
Returns platform-wide uptime rollup for the specified time window.
Request
Authorization: None
Path Parameters:
| Parameter | Allowed Values |
|---|---|
window | 24h | 7d | 30d | 90d | 1y |
Response
{
"data": {
"window": "30d",
"scopeType": "platform",
"scopeKey": "global",
"uptimePercent": 99.91,
"downtimeMinutes": 39,
"incidentCount": 2,
"computedAt": "2026-03-31T12:00:00.000Z"
}
}Code Example
curl https://api.chainabit.com/api/v1/status/uptime/30d