- Live API Reference
- Account & Service Health
- Health Check
Health Check API
Service status, dependency checks and feed freshness for monitoring. Public, not rate limited.
Endpoint
Returns system health status. Public endpoint - no authentication required. Not rate limited.
Parameters
This endpoint takes no parameters.
Request
curl https://lab.flashalpha.com/healthimport requests
resp = requests.get("https://lab.flashalpha.com/health")
resp.raise_for_status()
health = resp.json()
print(f"HTTP {resp.status_code} - {health['status']}")
for name, check in health["entries"].items():
print(f" {name}: {check['status']}")const resp = await fetch("https://lab.flashalpha.com/health");
if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
const health = await resp.json();
console.log(`HTTP ${resp.status} - ${health.status}`);
Object.entries(health.entries).forEach(([name, c]) => console.log(` ${name}: ${c.status}`));Try it live
Runs on live market data. Public endpoint: no API key needed.
Response
{
"status": "Healthy",
"endpoint_version": "2026.09.30",
"data_as_of": {
"node": "fa4",
"equity_feed": "2026-10-30T13:46:13.593Z",
"equity_options_feed": "2026-10-30T13:46:12Z",
"index_feed": "2026-10-30T13:46:12.105Z",
"index_options_feed": "2026-10-30T13:46:08Z",
"futures_feed": "2026-10-30T13:46:09.1Z",
"futures_options_feed": "2026-10-30T13:46:07.498Z",
"flow_feed": "2026-10-30T13:46:00Z",
"oi_feed": "2026-10-29T20:00:00Z",
"macro_feed": "2026-10-29T21:00:20Z"
},
"entries": {
"sql_server": {
"status": "Healthy",
"description": "Dependency check passed",
"duration_ms": 36.6952
},
"thetadata": {
"status": "Healthy",
"description": "Dependency check passed",
"duration_ms": 38.4109
},
"market_data": {
"status": "Healthy",
"description": "Dependency check passed",
"duration_ms": 0.0133
}
},
"controls_status": "Unhealthy",
"controls_as_of": "2026-10-30T13:45:59.2774825+00:00",
"monitor_owner": false,
"controls": {
"feeds": {
"status": "unknown",
"critical": false,
"checkedAt": null
},
"open_interest": {
"status": "unhealthy",
"critical": false,
"checkedAt": "2026-10-30T13:45:47.1325318+00:00"
},
"reconciliation": {
"status": "unknown",
"critical": false,
"checkedAt": null
},
"background": {
"status": "unhealthy",
"critical": false,
"checkedAt": "2026-10-28T10:04:25.4583721+00:00"
}
}
}Sending request…
See this endpoint on live data
Send this exact request and the real response shows up here, right next to the example.
The live response also carries operational control fields (controls_status, controls_as_of, controls).
Response Fields
| Field | Type | Description |
|---|---|---|
status |
string | Healthy or Unhealthy overall |
controls_status | string | Controls status |
controls_as_of | string | Controls as of |
monitor_owner | boolean | Monitor owner |
controls | object | Controls |
endpoint_version |
string | Version of the API build that answered |
data_as_of |
object | Node that answered and when each upstream feed last delivered (see response envelope) |
entries |
object | One dependency check per key, each with status, description and duration_ms |
Fields of entries
| Field | Type | Description |
|---|---|---|
entries.sql_server | object | Entries: sql server |
entries.sql_server.description | string | Plain-English description |
entries.sql_server.duration_ms | number | Sql server: duration ms |
entries.sql_server.status | string | Healthy or Unhealthy overall |
entries.thetadata | object | Entries: thetadata |
entries.thetadata.description | string | Plain-English description |
entries.thetadata.duration_ms | number | Thetadata: duration ms |
entries.thetadata.status | string | Healthy or Unhealthy overall |
entries.market_data | object | Entries: market data |
entries.market_data.description | string | Plain-English description |
entries.market_data.duration_ms | number | Market data: duration ms |
entries.market_data.status | string | Healthy or Unhealthy overall |
Fields of controls
| Field | Type | Description |
|---|---|---|
controls.feeds | object | Controls: feeds |
controls.feeds.critical | boolean | Feeds: critical |
controls.feeds.checkedAt | string | null | Feeds: checked timestamp (UTC) |
controls.feeds.status | string | Healthy or Unhealthy overall |
controls.open_interest | object | Controls: open interest |
controls.open_interest.critical | boolean | Open interest: critical |
controls.open_interest.checkedAt | string | Open interest: checked timestamp (UTC) |
controls.open_interest.status | string | Healthy or Unhealthy overall |
controls.reconciliation | object | Controls: reconciliation |
controls.reconciliation.critical | boolean | Reconciliation: critical |
controls.reconciliation.checkedAt | string | null | Reconciliation: checked timestamp (UTC) |
controls.reconciliation.status | string | Healthy or Unhealthy overall |
controls.background | object | Controls: background |
controls.background.critical | boolean | Background: critical |
controls.background.checkedAt | string | Background: checked timestamp (UTC) |
controls.background.status | string | Healthy or Unhealthy overall |
Errors
| Status | Error | When |
|---|---|---|
503 | - | One or more dependency checks are Unhealthy; the body has the same shape with "status": "Unhealthy". |
What Is the Health Check Endpoint?
The Health Check endpoint reports whether the API and its dependencies are up, and how fresh each upstream feed is. It needs no API key and is not rate limited, so it is safe to poll from uptime monitors and status pages. Read the HTTP status for a simple up/down signal and the entries and data_as_of blocks for detail.
Common Use Cases
- Uptime monitoring - alert when the endpoint stops returning
200 - Gate trading logic - pause automated strategies while a dependency is
Unhealthy - Check feed freshness - compare
data_as_oftimestamps against each feed's cadence - Status pages - show service health to your own users
Related
Complementary endpoints
- Account, Plan & Usage - confirm your key and quota
- Response envelope - how
data_as_ofis reported on every response - Lab API Reference - field glossary and status codes