API and badges
Free, read-only and open to any site (CORS *). Responses are cached for 60 seconds, so there is no point polling more than once a minute.
GET /api/status
The latest check of every feed. status is one of HEALTHY, LATE, STALE, PAUSED, MARKET_CLOSED or UNKNOWN. Times are unix seconds.
curl https://oracleheartbeat.xyz/api/status
{
"chainId": 4663,
"checkedAt": 1790707228,
"checkedAtIso": "2026-09-29T18:40:28.000Z",
"chainError": null,
"disclaimer": "Read-only oracle monitoring data. Not financial advice.",
"assets": {
"AAPL": {
"name": "Apple",
"status": "HEALTHY",
"price": 331.99783102,
"updatedAt": 1790692110,
"ageSec": 15118,
"deviationPct": null,
"paused": false
},
"…": "one entry per feed"
}
}
GET /api/incidents
The last 200 incidents, newest first. An incident with closedAt: null is still ongoing; its type is the worst state seen so far.
curl https://oracleheartbeat.xyz/api/incidents
Status badges
Every feed has a live SVG badge for READMEs and docs, cached for 60 seconds:
[](https://oracleheartbeat.xyz/asset/TSLA)
Replace TSLA with any symbol from the dashboard. Not financial advice.