{"openapi":"3.1.0","info":{"title":"Bitcoin Mining Pool Distribution API","version":"1.0.0","description":"Who actually mines Bitcoin's blocks, served from the public blockchain.com pools feed. The distribution endpoint ranks the mining pools by the blocks they found over a window (24 hours to 10 days), with each pool's share of blocks and its estimated share of the network hash rate (in EH/s). The centralization endpoint turns that into mining-decentralisation metrics — the top pool's share, the top-3 and top-5 share, the Nakamoto coefficient (the fewest pools that together control more than half of the attributed blocks, a headline measure of how centralised mining is), the Herfindahl concentration index, and the share of blocks not attributed to a known pool. The pool endpoint looks up a single pool's blocks, share, rank and estimated hash rate. This is the mining-pool and hash-rate-distribution / centralisation data-cut — distinct from the mempool-snapshot, the aggregate on-chain-metrics and the price-feed APIs in the catalogue. Estimated per-pool hash rate = block share times network hash rate. Live, no key on the upstream, nothing stored.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/miningpools-api","description":"oanor gateway"}],"tags":[{"name":"Mining"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/centralization":{"get":{"operationId":"get_v1_centralization","tags":["Mining"],"summary":"Decentralisation metrics incl. Nakamoto coefficient","description":"","parameters":[{"name":"timespan","in":"query","required":false,"description":"Window","schema":{"type":"string"},"example":"4days"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Nakamoto coefficient = fewest known pools controlling >50% of attributed blocks; lower means more centralised.","source":"blockchain.com","timespan":"4days","top_pool":{"pool":"AntPool","share_pct":44.49},"total_blocks":515,"top3_share_pct":88.57,"top5_share_pct":95.92,"herfindahl_index":3020.2,"known_pool_count":7,"unknown_share_pct":52.43,"nakamoto_coefficient":2},"meta":{"timestamp":"2026-06-12T01:41:30.674Z","request_id":"55f62002-a793-4174-a142-0bc42a212928"},"status":"ok","message":"Centralization retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/distribution":{"get":{"operationId":"get_v1_distribution","tags":["Mining"],"summary":"Pools ranked by blocks with share & hash rate","description":"","parameters":[{"name":"timespan","in":"query","required":false,"description":"24hours, 3days, 4days, 5days, 7days, 10days","schema":{"type":"string"},"example":"4days"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"pools":[{"pool":"Unknown","blocks":270,"share_pct":52.43,"attributed":false,"estimated_hashrate_eh":434.57},{"pool":"AntPool","blocks":109,"share_pct":21.17,"attributed":true,"estimated_hashrate_eh":175.44},{"pool":"F2Pool","blocks":64,"share_pct":12.43,"attributed":true,"estimated_hashrate_eh":103.01},{"pool":"ViaBTC","blocks":44,"share_pct":8.54,"attributed":true,"estimated_hashrate_eh":70.82},{"pool":"Braiins Pool","blocks":10,"share_pct":1.94,"attributed":true,"estimated_hashrate_eh":16.1},{"pool":"SBI Crypto","blocks":8,"share_pct":1.55,"attributed":true,"estimated_hashrate_eh":12.88},{"pool":"Ultimus","blocks":6,"share_pct":1.17,"attributed":true,"estimated_hashrate_eh":9.66},{"pool":"BTC.com","blocks":4,"share_pct":0.78,"attributed":true,"estimated_hashrate_eh":6.44}],"source":"blockchain.com","timespan":"4days","pool_count":7,"total_blocks":515,"network_hashrate_eh":828.9},"meta":{"timestamp":"2026-06-12T01:41:30.797Z","request_id":"d48d3612-3fbd-49d9-adbc-548bf085757d"},"status":"ok","message":"Distribution retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/pool":{"get":{"operationId":"get_v1_pool","tags":["Mining"],"summary":"A single pool's blocks, share and rank","description":"","parameters":[{"name":"pool","in":"query","required":true,"description":"Pool name","schema":{"type":"string"},"example":"AntPool"},{"name":"timespan","in":"query","required":false,"description":"Window","schema":{"type":"string"},"example":"4days"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"pool":"AntPool","rank":2,"blocks":109,"source":"blockchain.com","timespan":"4days","share_pct":21.17,"total_blocks":515,"estimated_hashrate_eh":175.44},"meta":{"timestamp":"2026-06-12T01:41:30.870Z","request_id":"534366a8-5e37-4e69-acec-bd96d207959b"},"status":"ok","message":"Pool retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"timespan is 24hours, 3days, 4days (default), 5days, 7days or 10days. 'Unknown' is blocks not attributed to a named pool; centralisation metrics are computed over known pools and report the unknown share separately. Estimated per-pool hash rate = block share x network hash rate (EH/s).","source":"blockchain.com (api.blockchain.info/pools + /q/hashrate, live)","service":"miningpools-api","top_pool":"AntPool","endpoints":{"GET /v1/meta":"This document.","GET /v1/pool":"A single pool's blocks, share and rank (pool=AntPool).","GET /v1/distribution":"Pools ranked by blocks with share & estimated hash rate (timespan=4days).","GET /v1/centralization":"Mining-decentralisation metrics incl. Nakamoto coefficient & HHI (timespan=4days)."},"description":"Who actually mines Bitcoin's blocks, from blockchain.com. distribution ranks mining pools by blocks found over a window with each pool's block share and estimated hash-rate share; centralization turns that into decentralisation metrics — top pool / top-3 / top-5 share, the Nakamoto coefficient (fewest pools controlling >50% of blocks), the Herfindahl concentration index, and the unattributed share; pool looks up a single pool's blocks, share and rank. Live, no key, nothing stored. The mining-pool / hash-rate-distribution and centralisation data-cut — distinct from the mempool-snapshot, on-chain-metrics and price-feed APIs.","upstream_status":"ok"},"meta":{"timestamp":"2026-06-12T01:41:30.938Z","request_id":"8ab4d93f-2b9e-4ec9-a4e8-84811951c990"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":29000,"rps_limit":5,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":680,"monthly_call_quota":330000,"rps_limit":15,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1990,"monthly_call_quota":1390000,"rps_limit":40,"hard_limit":true},{"slug":"scale","name":"Scale","price_cents_month":4640,"monthly_call_quota":4950000,"rps_limit":100,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/miningpools-api"}