Rollup freshness
GET
/rh/status
const url = 'https://api.getchord.xyz/v1/rh/status';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.getchord.xyz/v1/rh/statusChain 4663 only; takes no chain parameter. Served from Chord’s rollup tables, never from a raw scan. 503 NOT_READY until the rollup has run.
Responses
Section titled “ Responses ”Media typeapplication/json
object
chain
integer
enabled
boolean
recentAt
Unix time, seconds, UTC.
integer | null
staleSec
integer | null
floorHour
integer | null
genesisHour
integer | null
backfillComplete
boolean
updatedAt
Unix time, milliseconds — when the server built this answer.
integer
Example
{ "chain": 4663, "enabled": true, "recentAt": 1789891427, "staleSec": 441, "floorHour": 1781197200, "genesisHour": 1785974400, "backfillComplete": true, "updatedAt": 1789891868582}The lane behind this endpoint is not ready or not enabled here (NOT_READY, CHAIN_NOT_ENABLED, NOT_ENABLED, *_UNAVAILABLE). Retry later; do not treat it as an empty answer.
Media typeapplication/json
Every non-2xx body.
object
error
required
Stable machine code, e.g. INVALID_PARAMS, NOT_READY, RATE_LIMIT_EXCEEDED.
string
message
For humans.
string
statusCode
HTTP status, when included.
integer
Example
{ "error": "INVALID_PARAMS", "message": "amount must be an integer string in the token's smallest unit"}