{"ok":true,"source":"cosmoshub","chain":"cosmoshub-4","section":"index","everyMs":null,"asOf":null,"sourceAsOf":null,"freshness":{"status":"not_applicable","reason":"module_catalog","checkedAt":null,"ageMs":null,"everyMs":null,"sourceAsOf":null},"partial":false,"failed":[],"data":{"module":"X PrimeFlow — analytics for the Cosmos Hub","version":"1.0.0","chain":"cosmoshub-4","license":"open — free public read API, no key required","publicBase":"/api/public/cosmoshub","rateLimit":{"requestsPerMinute":60,"heavyEndpointsPerMinute":30,"scope":"per IP"},"dataSources":{"chain":"4 public Cosmos Hub LCD endpoints, tried in order (cosmos-mainnet-api.bonynode.online, cosmoshub-api.cosmos-spaces.cloud, cosmos-rest.publicnode.com, rest.cosmos.directory/cosmoshub). The first host carries our domain name but NOT our hardware: measured 20.09.2026, the node behind cosmos-mainnet-rpc.bonynode.online reports moniker \"ECO Stake\", while our own AtomOne and Provenance nodes report \"bonynode\". It is a BonyNode-hosted gateway in front of a third-party node, and every response names the endpoint that actually answered so this is checkable rather than asserted."},"rights":{"chainFacts":"display-only, resaleOk:false","reason":"We do not operate a Cosmos Hub read node, so no reading on this page is a public-ledger read on our own hardware. That is the exact condition under which the AtomOne and Provenance modules do claim redistribution, and it is not met here."},"ourValidator":{"operatorAddress":"cosmosvaloper13nwzm5dfd26ue74jr6sc39gyn3qze0rjzsyh4e","account":"cosmos13nwzm5dfd26ue74jr6sc39gyn3qze0rj8ysze2","note":"BonyNode validates cosmoshub-4. This is a separate fact from where the data on this page comes from: operating a validator does not turn a third-party node reading into ours."},"endpoints":[{"path":"/overview","desc":"every section in one response, with heavy validator and IBC lists trimmed and the ICF delegation criteria computed"},{"path":"/network","desc":"chain id, height, measured block interval against the nominal x/mint cadence, app and comet version, active LCD"},{"path":"/staking","desc":"bonded ratio, inflation with its goal_bonded direction, annual provisions, approximate APR, unbonding period"},{"path":"/validators","desc":"full bonded set with uptime over the slashing window, voting power, Nakamoto coefficient, top-10/25/50 concentration and the BonyNode row. ?limit=N"},{"path":"/governance","desc":"recent proposals with live tallies and turnout against bonded stake, the chain gov parameters, and our own vote on every proposal still in its voting period"},{"path":"/ibc","desc":"channels joined to their connection, light client and remote chain id, aggregated per destination chain; usable:true requires STATE_OPEN AND an Active client"},{"path":"/infrastructure","desc":"who actually serves this chain to us, decided by the moniker the node reports, plus our own validator record"}],"honesty":["A failing upstream returns HTTP 503 with a reason, never HTTP 200 with an empty array.","Chain facts here are NOT ours to redistribute: they arrive through a third-party node. The AtomOne and Provenance modules claim otherwise because they read our own validator nodes; this one does not, and says so.","The first LCD carries our domain name but reports a third-party moniker. The page names it, rather than letting the hostname imply ownership.","stakingApr is flagged approx:true — validator commission is not deducted and missed blocks are not modelled.","Validator uptime is computed over the chain signed_blocks_window, which is returned alongside it. Validators without a matched signing_info report uptime:null rather than a flattering 100%.","Historical governance participation is NOT reported. x/gov prunes vote records on finalised proposals, so the ratio is not readable from an LCD; only votes on proposals still in their voting period are shown.","IBC light-client liveness is read for the busiest destinations only. Unchecked channels report usable:null, which is \"unknown\", not \"fine\".","Every ICF delegation criterion carries measured:true|false. An unmeasured criterion has meets:null, never false."]},"ts":1790581642467}