Data Quality REST API

REST monitoring routes for freshness, incidents, coverage, latency, health, and SLA checks. 8 documented routes for QA and operations.

Routes
8 documented routes
Focus
Freshness and incidents
Use
Monitoring and QA

Data Quality

Freshness, incidents, latency, coverage, and health checks.

Data Quality

GET/v1/data-quality/status0 credits

Get overall system health status and per-exchange status

/v1/data-quality/status
{
"success": true,
"data": {
"status": "operational",
"updated_at": "2026-01-01T12:00:00Z",
"services": [
{
"name": "rest_api",
"status": "operational"
},
{
"name": "websocket",
"status": "operational"
},
{
"name": "export_pipeline",
"status": "operational"
}
]
},
"meta": {
"request_id": "req_abc123",
"count": 1
}
}
GET/v1/data-quality/coverage1 credit

Get data coverage summary across all exchanges and data types.

Get data coverage summary across all exchanges and data types. Note: May take 30-60 seconds on first request (cached for 5 minutes).

/v1/data-quality/coverage
{
"success": true,
"data": [
{
"exchange": "hyperliquid",
"symbols": 248,
"earliest_available": "2023-04-01T00:00:00Z"
},
{
"exchange": "lighter",
"symbols": 86,
"earliest_available": "2025-08-01T00:00:00Z"
},
{
"exchange": "hyperliquid_hip3",
"symbols": 125,
"earliest_available": "2026-02-17T00:00:00Z"
},
{
"exchange": "hyperliquid_spot",
"symbols": 294,
"earliest_available": "2025-03-22T00:00:00Z"
}
],
"meta": {
"request_id": "req_abc123",
"count": 4
}
}
GET/v1/data-quality/coverage/:exchange1 credit

Get detailed coverage for a specific exchange.

Get detailed coverage for a specific exchange. Note: May take 30-60 seconds on first request (cached for 5 minutes).

exchangepathrequiredExchange name (hyperliquid, lighter, hip3)
/v1/data-quality/coverage/hyperliquid
{
"success": true,
"data": {
"exchange": "hyperliquid",
"symbols": 248,
"data_types": [
"orderbook",
"trades",
"candles",
"funding",
"open_interest",
"liquidations"
],
"earliest_available": "2023-04-01T00:00:00Z"
},
"meta": {
"request_id": "req_abc123",
"count": 1
}
}
GET/v1/data-quality/coverage/:exchange/:symbol2 credits

Get symbol-specific coverage with gap detection and empirical data cadence.

Get symbol-specific coverage with gap detection and empirical data cadence. Supports time-bounded gap detection via from/to params (default: last 30 days). Historical coverage uses hour-level granularity. Note: May take 30-60 seconds on first request (cached for 1 hour).

exchangepathrequiredExchange name (hyperliquid, lighter, hip3)
symbolpathrequiredTrading pair (e.g., BTC, ETH)
fromqueryStart of gap detection window (Unix ms). Default: now - 30 days
toqueryEnd of gap detection window (Unix ms). Default: now
/v1/data-quality/coverage/hyperliquid/BTC?from=1704067200000&to=1706745600000
{
"success": true,
"data": {
"exchange": "hyperliquid",
"symbol": "BTC",
"coverage": {
"orderbook": {
"from": "2023-04-01T00:00:00Z",
"to": "2026-01-01T12:00:00Z",
"status": "complete"
},
"trades": {
"from": "2023-04-01T00:00:00Z",
"to": "2026-01-01T12:00:00Z",
"status": "complete"
}
}
},
"meta": {
"request_id": "req_abc123",
"count": 1
}
}
GET/v1/data-quality/incidents1 credit

List data quality incidents with filtering and pagination

statusqueryFilter by status: open, resolved, all (default: all)
severityqueryFilter by severity: critical, major, minor
exchangequeryFilter by exchange
limitqueryMax results (default: 50)
offsetqueryPagination offset
/v1/data-quality/incidents?status=open&limit=10
{
"success": true,
"data": [
{
"id": "inc_abc123",
"status": "resolved",
"severity": "minor",
"exchange": "hyperliquid",
"started_at": "2026-01-01T10:15:00Z",
"resolved_at": "2026-01-01T10:42:00Z"
}
],
"meta": {
"request_id": "req_abc123",
"count": 1
}
}
GET/v1/data-quality/incidents/:id1 credit

Get details for a specific incident

idpathrequiredIncident ID
/v1/data-quality/incidents/inc_abc123
{
"success": true,
"data": {
"id": "inc_abc123",
"status": "resolved",
"severity": "minor",
"summary": "Delayed order book checkpoints for BTC",
"affected": [
{
"exchange": "hyperliquid",
"symbol": "BTC",
"data_type": "orderbook"
}
],
"started_at": "2026-01-01T10:15:00Z",
"resolved_at": "2026-01-01T10:42:00Z"
},
"meta": {
"request_id": "req_abc123",
"count": 1
}
}
GET/v1/data-quality/latency1 credit

Get current latency metrics for WebSocket, REST API, and data freshness

/v1/data-quality/latency
{
"success": true,
"data": {
"rest_p50_ms": 42,
"rest_p95_ms": 138,
"websocket_p95_ms": 95,
"freshness_lag_ms": 1200,
"measured_at": "2026-01-01T12:00:00Z"
},
"meta": {
"request_id": "req_abc123",
"count": 1
}
}
GET/v1/data-quality/sla5 credits

Get SLA compliance metrics for a specific month

yearqueryYear (default: current year)
monthqueryMonth 1-12 (default: current month)
/v1/data-quality/sla?year=2026&month=1
{
"success": true,
"data": {
"month": "2026-01",
"uptime_percent": 99.98,
"incidents": 1,
"excluded_minutes": 0
},
"meta": {
"request_id": "req_abc123",
"count": 1
}
}