Estimate Lithos hashrate
/stats/mining/hashrateEstimates the hashrate behind Lithos blocks: the network difficulty of every confirmed block carrying a configured Lithos genesis, added up and divided by the seconds covered. A chain block counts once however many genesis transactions it holds. This measures the miners producing those blocks — not this client's workers, and not all of Ergo. Claimed NISP scores are never used.
Range and interval rules match /stats/mining/buckets. The returned from and until are
the period actually covered once clipped to retained history and the processed tip, and
partial says the request reached past it. With no work or no usable time the status is
insufficient-data and hashesPerSecond is left out rather than reported as zero; fewer
than 20 sampled blocks is sparse. Read both status and sourceStatus — sampling quality
and data freshness are different things.
relativeSamplingError is 1 / sqrt(sampleCount), which assumes blocks arrive as a Poisson
process. It is a rough relative error, not a confidence interval, and it says nothing about
whether miner participation held steady. Compare short or sparse windows carefully.
Query parameters
frominteger · int64requiredInclusive start in Unix milliseconds, on a UTC hour or day boundary to match
interval.untilinteger · int64requiredExclusive end in Unix milliseconds. On the same boundary, later than
from, and at most 500 intervals after it.intervalstringdefault "hour"hour | dayBucket size. Both range boundaries must be a whole number of these since the Unix epoch.
Responses
200An estimate, or an explicit insufficient-data result, with coverage and sample count.LithosHashrateEstimate▶
statusstringrequiredSampling quality, separate from source freshness.
sparsemeans fewer than 20 sampled blocks.one ofinsufficient-datasparseestimatedsourceStatusstringrequiredHow far collection has got.
readymeans it reached the last checked chain tip.catching-upandrecoveringmean replay or reorg work is still running,stalemeans the last successful check is too old, andunavailablemeans collection failed. Ondisabledorloadingthe numbers are not evidence that the period was quiet.one ofdisabledloadingreadystaleunavailablecatching-uprecovering▶
sourceMiningCursorrequiredThe processed chain point a statistics result was read from.
heightintegerrequiredblockIdstringrequiredparentIdstringrequiredtimestampinteger · int64requiredThe block's own timestamp in Unix milliseconds, not the time the client read it.
frominteger · int64requiredStart of the covered period in Unix milliseconds, clipped to retained history.
untilinteger · int64requiredEnd of the covered period in Unix milliseconds, clipped to the processed tip. Equals
fromwhen no usable time is left.sampleCountinteger · int64requiredDistinct chain blocks in the selected buckets that carried a configured Lithos genesis.
0 – …difficultySumstringrequiredAn exact nonnegative integer as a decimal string. Parse it without going through a float.
decimal stringhashesPerSecondstringThe estimate in whole hashes per second. Left out rather than reported as zero when there is not enough data.
decimal stringrelativeSamplingErrornumber · doubleRough relative standard error, 1 / sqrt(sampleCount). 0.2 means about 20%. Omitted with zero samples.
partialbooleanrequiredWhether the requested range reaches past retained coverage.
populationstringrequiredone ofminers-producing-configured-lithos-genesisformulastringrequiredone ofsum-confirmed-lithos-block-difficulty/covered-seconds
400A timestamp is missing, malformed, off a bucket boundary, or the range is too long; or `interval` is not hour or day.ApiError▶
errorintegerrequiredError code
reasonstringrequiredError message explaining the reason of the error
detailstringrequirednullableDetailed error description
503History is loading, disabled, busy, or unreadable. Check `mining.status` in /stats before retrying.ApiError▶
errorintegerrequiredError code
reasonstringrequiredError message explaining the reason of the error
detailstringrequirednullableDetailed error description