Public API

Read-only JSON over HTTP. All paths are relative to this site. Responses are application/json (except the SSE stream).

Aggregator API rate-limited · 60 req/min/IP

YiiMP-compatible endpoints for pool-stats aggregators. Over the limit returns 429 with a Retry-After header; every response carries X-RateLimit-Limit / X-RateLimit-Remaining.

GET/api/statusrate-limited

Pool status aggregated per mining algorithm, with PROP/solo splits. YiiMP-compatible shape for pool-stats aggregators.

Example response
{
  "scrypt": {
    "name": "scrypt",
    "port": 3480,
    "coins": 2,
    "fees": 1,
    "fees_solo": 2,
    "hashrate": 269473938,
    "hashrate_shared": 269473938,
    "hashrate_solo": 0,
    "workers": 5,
    "workers_shared": 5,
    "workers_solo": 0,
    "24h_blocks": 7
  }
}
GET/api/currenciesrate-limited

Per-coin status with PROP/solo splits: hashrate, workers, shares, blocks and the last found block. YiiMP-compatible (the *_shared / *_solo fields let aggregators detect solo support).

Example response
{
  "ABY": {
    "name": "ArtByte",
    "algo": "scrypt",
    "port": 3480,
    "reward": 1250,
    "height": 4070786,
    "difficulty": 9743.21,
    "minimumPayment": 0.001,
    "fees": 1,
    "fees_solo": 2,
    "miners": 1,
    "workers": 1,
    "workers_shared": 1,
    "workers_solo": 0,
    "shares": 392,
    "hashrate": 7267227499,
    "hashrate_shared": 7267227499,
    "hashrate_solo": 0,
    "network_hashrate": 18500000000,
    "24h_blocks": 3,
    "24h_blocks_shared": 3,
    "24h_blocks_solo": 0,
    "lastblock": 4070786,
    "lastblock_shared": 4070786,
    "lastblock_solo": null,
    "timesincelast": 67,
    "timesincelast_shared": 67,
    "timesincelast_solo": null
  }
}

General

GET/api/pools

All pools with full live stats (the dashboard data set).

Example response
{
  "pools": [
    {
      "symbol": "aby", "name": "ArtByte", "algorithm": "scrypt",
      "fees": 1, "fees_solo": 2, "minimumPayment": 0.001,
      "hashrate": 7267227499, "hashrate_shared": 7267227499, "hashrate_solo": 0,
      "workers": 1, "workers_shared": 1, "workers_solo": 0, "miners": 1,
      "validShares": 392, "invalidShares": 0,
      "blocksPending": 0, "blocksConfirmed": 7, "blocksOrphaned": 1,
      "totalPaid": "0.35000000",
      "explorer": { "tx": "…{id}", "block": "…{id}", "address": "…{id}" },
      "ports": [ { "port": 3480, "diff": 8 } ]
    }
  ]
}
GET/api/pool/{coin}

Single pool summary by coin symbol (e.g. aby).

Example response
{
  "symbol": "aby", "name": "ArtByte", "algorithm": "scrypt",
  "fees": 1, "fees_solo": 2, "minimumPayment": 0.001,
  "hashrate": 7267227499, "hashrate_shared": 7267227499, "hashrate_solo": 0,
  "workers": 1, "workers_shared": 1, "workers_solo": 0, "miners": 1,
  "validShares": 392, "invalidShares": 0,
  "blocksPending": 0, "blocksConfirmed": 7, "blocksOrphaned": 1,
  "totalPaid": "0.35000000",
  "explorer": { … }, "ports": [ { "port": 3480, "diff": 8 } ]
}
GET/api/pool/{coin}/blocks

Recent blocks found for the coin (newest first).

Example response
{
  "blocks": [
    {
      "height": 4070786, "block_hash": "fa9f130e…", "tx_hash": "…",
      "finder": "CKFAb…J.a1", "reward": "0.05000000",
      "confirmations": 120, "status": "confirmed",
      "created_at": "2026-06-18T20:27:56.000Z"
    }
  ]
}
GET/api/pool/{coin}/payments

Recent payments sent for the coin.

Example response
{
  "payments": [
    { "address": "CKFAb…J", "amount": "0.04950000", "tx_id": "…", "created_at": "…" }
  ]
}
GET/api/miner/{coin}/{address}

Miner stats by coin + wallet address: balances, hashrate, per-rig breakdown (incl. solo flag) and payments.

Example response
{
  "coin": "aby", "address": "CKFAb…J",
  "immature": "0", "balance": "0.04950000", "paid": "0.30000000",
  "hashrate": 7267227499,
  "workers": [
    { "worker": "CKFAb…J.a1", "name": "a1", "hashrate": 7267227499, "solo": false }
  ],
  "payments": [ { "amount": "0.04950000", "tx_id": "…", "created_at": "…" } ]
}
GET/api/liveSSE

Server-Sent Events stream — emits a data event with the pool list roughly every 10 seconds.

Example response
data: { "pools": [ … ], "time": 1718740000000 }