main
RVN XMR ETC RTM CFX BTC LTC KAS ZEPH ZANO XEC FB PPC DGB

MiningMadness API & Mining Monitoring

MiningMadness exposes a complete, open REST API that lets you monitor your workers, track earnings, query per-algorithm pool stats, and integrate with any third-party monitoring platform. No account or authentication needed for public endpoints – just your wallet address.

All API responses are plain JSON. Replace YOUR_WALLET with your mining wallet address. Rate limit: 1 request / 10 seconds per endpoint.

Join the MiningMadness Community on Discord

Get real-time support, share monitoring scripts, discuss overclocking settings, and stay up to date with pool announcements. Our Discord is the fastest way to reach the team and other miners.

Join Discord

REST API Reference

The MiningMadness API is fully compatible with the YiiMP pool API standard, which means any monitoring tool or script designed for YiiMP-based pools works out of the box with https://miningmadness.com.

Wallet Balance

Returns your current balance, unsold earnings, and the amount paid in the last 24 hours.

Request
GET https://miningmadness.com/api/wallet?address=YOUR_WALLET
Response
{
  "currency":  "BTC",
  "unsold":    0.00050362,
  "balance":   0.00000000,
  "unpaid":    0.00050362,
  "paid24h":   0.00000000,
  "total":     0.00050362
}
FieldDescription
currencyPayout coin symbol (e.g. BTC, LTC)
unsoldEarnings not yet exchanged to your payout coin (in BTC)
balanceConfirmed balance awaiting payout threshold (in payout coin)
unpaidTotal amount not yet paid out (unsold + balance)
paid24hAmount paid in the last 24 hours
totalunpaid + paid24h (current session total)

Wallet + Worker Details

Extended wallet endpoint. Returns the same balance fields as /api/wallet plus a full list of your active workers and their real-time hashrate, algorithm, difficulty, accepted/rejected shares, and recent payouts.

Request
GET https://miningmadness.com/api/walletEx?address=YOUR_WALLET
Response
{
  "currency": "BTC",
  "unsold":   0.00050362,
  "balance":  0.00000000,
  "unpaid":   0.00050362,
  "paid24h":  0.00000000,
  "total":    0.00050362,
  "miners": [
    {
      "version":    "t-rex/0.26.8",
      "password":   "d=8192",
      "ID":         "rig1",
      "algo":       "kawpow",
      "difficulty": 8192,
      "subscribe":  1,
      "accepted":   4829183.5,
      "average":    4829183.5,
      "rejected":   0
    }
  ],
  "payouts": [
    {
      "time":   1714500000,
      "amount": "0.00100000",
      "tx":     "abc123…"
    }
  ]
}
Field (miners[])Description
versionMiner software and version reported via stratum
passwordStratum password used (difficulty parameter, etc.)
IDWorker name (stratum username suffix after the dot)
algoAlgorithm currently mining
difficultyCurrent share difficulty assigned to this worker
acceptedAccepted hashrate (H/s) over the last sampling window
rejectedRejected hashrate (H/s) – high values indicate hardware/OC issues

Pool Status (by Algorithm)

Returns real-time statistics for every algorithm active on the pool: stratum port, fee, total hashrate, worker count, current profitability estimate, and 24-hour averages.

Request
GET https://miningmadness.com/api/status
Response
{
  "kawpow": {
    "name":              "kawpow",
    "port":              3628,
    "coins":             3,
    "fees":              0.9,
    "hashrate":          45872345600,
    "workers":           82,
    "estimate_current":  "0.00004821",
    "estimate_last24h":  "0.00004615",
    "actual_last24h":    "0.00004598",
    "mbtc_mh_factor":    1,
    "hashrate_last24h":  44512000000
  },
  "autolykos2": { … },
  …
}
FieldDescription
portStratum port for this algorithm
feesPool fee percentage
hashrateCurrent total pool hashrate (H/s)
workersNumber of active connected workers
estimate_currentCurrent profitability in BTC per MH/day (mBTC/MH/day × mbtc_mh_factor)
estimate_last24h24-hour average profitability estimate
actual_last24hActual paid profitability over the last 24 hours
mbtc_mh_factorUnit conversion factor (e.g. 1000 for algorithms measured in GH/s)

Currencies (per Coin)

Returns detailed statistics for every individual coin currently active on the pool, including block height, network difficulty, pool hashrate, blocks found in 24 h, payout method, and minimum payout.

Request
GET https://miningmadness.com/api/currencies
Response
{
  "RVN": {
    "algo":             "kawpow",
    "port":             3628,
    "name":             "Ravencoin",
    "reward":           2500,
    "height":           3450000,
    "difficulty":       74821.5,
    "workers":          41,
    "shares":           1204,
    "hashrate":         18234567800,
    "network_hashrate": 9812345678900,
    "estimate":         "0.00004821",
    "24h_blocks":       127,
    "24h_btc":          0.00541295,
    "lastblock":        3449998,
    "timesincelast":    43,
    "fees":             0.9,
    "payout_method":    "PPS+",
    "min_payout":       10
  },
  …
}
FieldDescription
heightCurrent blockchain height
hashratePool hashrate for this coin (H/s)
network_hashrateFull network hashrate (H/s)
24h_blocksBlocks found by the pool in the last 24 hours
timesincelastSeconds since the last block was found
payout_methodReward distribution method (PPS+, PROP, etc.)
min_payoutMinimum balance required to trigger an automatic payout

Compatible Monitoring Tools

Because MiningMadness uses the standard YiiMP API, a wide range of third-party tools can read your mining stats without any custom configuration. Below are the most popular options tested with our pool.

Awesome Miner Windows / Linux

Awesome Miner is a full-featured GPU & ASIC mining management platform with built-in YiiMP pool integration. It reads /api/status and /api/walletEx to display live hashrate graphs, worker health, and earnings estimates directly in its dashboard.

How to add MiningMadness:
  1. Open PoolsAdd Pool → choose YiiMP
  2. Enter the pool URL: https://miningmadness.com
  3. Enter your wallet address as the username
  4. Awesome Miner will auto-discover algorithms and ports via /api/status
Awesome Miner

Minerstat Web / Windows / Linux / HiveOS

Minerstat is a professional mining OS and monitoring platform. Using the Custom Pool feature you can point it at the /api/walletEx endpoint to track worker hashrate, accepted shares, and balance across all your rigs from a single dashboard.

API URL for Minerstat custom pool:
https://miningmadness.com/api/walletEx?address=YOUR_WALLET
Minerstat

HiveOS & RaveOS

HiveOS and RaveOS are mining-focused Linux distributions with remote fleet management built in. Both support YiiMP-based pools natively: simply add https://miningmadness.com as a custom pool with your wallet address. Your per-worker hashrate, temperature, fan speed, and OC profile can all be monitored centrally while the pool API provides earnings data.

Flight sheet pool URL:
stratum+tcp://miningmadness.com:PORT

Replace PORT with the port for your algorithm from the Mining page or /api/status.

Custom Integration Examples

Because all endpoints return standard JSON you can integrate MiningMadness data into any monitoring stack (Grafana, Home Assistant, Discord bots, Telegram bots, spreadsheets, etc.) with a few lines of code.

cURL (shell / bash)
# Check your balance
curl -s "https://miningmadness.com/api/wallet?address=YOUR_WALLET"

# Get full worker list
curl -s "https://miningmadness.com/api/walletEx?address=YOUR_WALLET" | python3 -m json.tool

# Pool status for all algorithms
curl -s "https://miningmadness.com/api/status" | python3 -m json.tool
Python 3 – balance alert script
import urllib.request, json

POOL = "https://miningmadness.com"
WALLET = "YOUR_WALLET"

with urllib.request.urlopen(f"{POOL}/api/walletEx?address={WALLET}") as r:
    data = json.loads(r.read())

print(f"Unpaid: {data['unpaid']} BTC")
for w in data.get("miners", []):
    status = "✅" if w["accepted"] > 0 else "⚠️ OFFLINE"
    print(f"  {w['ID']} [{w['algo']}] {w['accepted']:.0f} H/s {status}")
Sending Alerts to Discord (webhook)

You can combine the API with a Discord webhook to receive custom notifications without relying on any third-party bot. Create a webhook in your Discord server (Channel Settings → Integrations → Webhooks) and use it in a cron job or home-server script:

import urllib.request, json

POOL    = "https://miningmadness.com"
WALLET  = "YOUR_WALLET"
WEBHOOK = "https://discord.com/api/webhooks/YOUR_WEBHOOK_ID/YOUR_TOKEN"

with urllib.request.urlopen(f"{POOL}/api/walletEx?address={WALLET}") as r:
    data = json.loads(r.read())

offline = [w for w in data.get("miners", []) if w["accepted"] == 0]
if offline:
    names = ", ".join(w["ID"] for w in offline)
    msg   = {"content": f"⚠️ **MiningMadness**: workers offline: {names}"}
    req   = urllib.request.Request(WEBHOOK, data=json.dumps(msg).encode(),
                                   headers={"Content-Type": "application/json"})
    urllib.request.urlopen(req)

Run this script every 5 minutes with cron (*/5 * * * * python3 /path/alert.py) and you will get a Discord message whenever a worker goes offline.

Frequently Asked Questions

No. The wallet, pool status, and currencies endpoints are fully public – you only need your mining wallet address. There is a soft rate limit of one request per 10 seconds per endpoint to protect the server.
Pool status and wallet data are cached for 15–30 seconds. Worker hashrate figures represent a rolling window computed from recent shares. For highly real-time data (millisecond precision), use the stratum connection statistics directly from your mining software.
The pool's hashrate estimate is calculated from recently submitted shares. If your miner just reconnected or your share difficulty is very high, there may be a short delay (up to a few minutes) before the rate appears. If the issue persists, check that your stratum URL and port are correct on the Mining page and ask for help on Discord.
Yes. Because the API returns standard JSON over HTTPS, it works with any HTTP-capable automation platform: Home Assistant (RESTful sensor), Node-RED, Zapier, Telegram bots (via Python python-telegram-bot library), IFTTT webhooks, and more. See the custom script examples above for a starting point, and share your integrations with the community on our Discord server.

Have a question not covered here? The MiningMadness community is happy to help.

Join our Discord