Public REST API — Free, no authentication required
| Coin | Pool Stats | Network Info | Client Info | Stratum Port |
|---|---|---|---|---|
| BCH | /api/pool | /api/network | /api/client/{address} | 7070, 7071, 7072 |
| BC2 | /api-bc2/pool | /api-bc2/network | /api-bc2/client/{address} | 8080 |
| BCH2 | /api-bch2/pool | /api-bch2/network | /api-bch2/client/{address} | 8585 |
| XEC | /api-xec/pool | /api-xec/network | /api-xec/client/{address} | 9090 |
{
"totalHashRate": 936819587182307, // H/s
"blockHeight": 942527,
"totalMiners": 4,
"blocksFound": [], // Array of found blocks
"fee": 0 // 0% fee!
}
{
"blocks": 942527,
"difficulty": 946505202042.59,
"networkhashps": 6512411012258233000, // H/s
"pooledtx": 1,
"chain": "main"
}
{wallet_address} with your BCH/BC2/BCH2/XEC address.{
"bestDifficulty": 123456789,
"sessionId": "abc...",
"workers": [
{
"name": "antminer_1",
"hashRate": 235000000000000, // H/s
"bestDifficulty": 12345678,
"lastSeen": "2026-03-16T00:30:00.000Z"
}
]
}
// BCH (with failover ports) Pool 1: stratum+tcp://solofury.com:7070 Pool 2: stratum+tcp://solofury.com:7071 Pool 3: stratum+tcp://solofury.com:7072 // BC2 Pool 1: stratum+tcp://solofury.com:8080 // BCH2 Pool 1: stratum+tcp://solofury.com:8585 // XEC Pool 1: stratum+tcp://solofury.com:9090 // Worker format Username: YOUR_WALLET_ADDRESS.worker_name Password: x
curl -s https://solofury.com/api/pool | python3 -m json.tool curl -s https://solofury.com/api-bc2/network curl -s https://solofury.com/api/client/YOUR_BCH_ADDRESS
// Fetch all pool stats
const coins = ['', '-bc2', '-bch2', '-xec'];
const stats = await Promise.all(
coins.map(c => fetch(`https://solofury.com/api${c}/pool`).then(r=>r.json()))
);
console.log(stats);
import requests
r = requests.get('https://solofury.com/api/pool')
data = r.json()
print(f"Hashrate: {data['totalHashRate']/1e12:.0f} TH/s")
print(f"Miners: {data['totalMiners']}")
print(f"Fee: {data['fee']}%")