Endpoints por coin
A SoloFury oferece APIs idênticas em 5 coins SHA-256. O base path varia conforme a coin — BCH usa /api por razões históricas; as demais usam /api-{coin}.
| Coin | Base path | Portas stratum |
|---|---|---|
| BTC | /api-btc | 6060, 6061, 6062 |
| BCH | /api | 7070, 7071, 7072 |
| BC2 | /api-bc2 | 8080, 8081, 8082 |
| BCH2 | /api-bch2 | 8585, 8586, 8587 |
| XEC | /api-xec | 9090, 9091, 9092 |
Estatísticas do pool
/api/pool Estatísticas de todo o pool: hashrate total (médias móveis 1m/1h/1d/7d), miners conectados, blocos encontrados, altura de bloco atual, difficulty/hashrate da rede, fee.
{
"totalHashRate": 2780000000000000, // H/s · current
"totalHashRate1m": 2810000000000000,
"totalHashRate1hr": 2750000000000000,
"totalHashRate1d": 2640000000000000,
"totalHashRate7d": 2420000000000000,
"blockHeight": 948592,
"networkDifficulty": 763004012345.6,
"networkHashRate": 5060000000000000000,
"totalMiners": 10,
"blocksFound": […], // array of past block events
"fee": 1 // percent
} Info do pool
/api/info Info de runtime do pool: melhor share até agora, shares aceitas/rejeitadas/stale/inválidas, eficiência, uptime, porta stratum, identificador do pool.
{
"poolIdentifier": "BCH-Solo",
"fee": 1,
"stratumPort": 7070,
"uptime": 8643215, // seconds
"accepted": 142357821,
"rejected": 12483,
"stale": 8421,
"invalid": 3,
"efficiency": "99.99",
"highScores": [{ "bestDifficulty": 2613000000000, "bestDifficultyUserAgent": "Antminer" }]
} Gráfico do pool
/api/info/chart Série temporal de hashrate do pool, contadores de aceitas/rejeitadas/stale/inválidas, difficulty da rede. Usada pelo gráfico do painel. Padrão 24h, máx. ~7 dias.
| Query | Tipo | Padrão | Descrição |
|---|---|---|---|
hours | integer | 24 | Tamanho da janela em horas (granularidade 5 min) |
[
{
"label": "01:25",
"data": 2540000000000000, // hashrate · H/s
"difficulty": 763004012345.6,
"accepted": 142357821,
"rejected": 12483,
"stale": 8421,
"invalid": 3
},
… // 288 points for 24h window
] Info de rede
/api/network Dados de rede blockchain ao vivo obtidos diretamente do nó subjacente — altura de bloco, difficulty, hashrate, tamanho do mempool, identificador da chain.
{
"blocks": 948592,
"difficulty": 763004012345.6,
"networkhashps": 5060000000000000000, // H/s
"currentblockweight": 3998000,
"currentblocktx": 2841,
"pooledtx": 3142,
"chain": "main",
"warnings": ""
} Histórico de rede
/api/network/history Série temporal de difficulty e hashrate da rede. Padrão 24h, máximo 168h (7 dias).
| Query | Tipo | Padrão | Descrição |
|---|---|---|---|
hours | integer | 168 | Tamanho da janela em horas (máx. 168) |
Info de client / miner
/api/client/{wallet_address} Dados do miner por endereço: workers conectados, hashrate por worker, contagens de shares, melhor difficulty alcançada, timestamp do último acesso.
| Path | Tipo | Descrição |
|---|---|---|
address | string | Endereço de wallet do miner (formato nativo BTC/BCH/BC2/BCH2/XEC) |
{
"bestDifficulty": 2613000000000,
"sessionId": "a1b2c3d4...",
"workers": [
{
"name": "S21Plus01",
"hashRate": 276000000000000, // H/s
"bestDifficulty": 59870000000,
"sessionId": "abc...",
"lastSeen": "2026-05-08T00:42:00.000Z",
"startTime": "2026-04-28T13:55:00.000Z"
},
…
]
} Gráfico de client
/api/client/{wallet_address}/chart Série temporal por miner: hashrate, shares aceitas/rejeitadas/stale/inválidas, difficulty. Mesma estrutura de /api/info/chart, mas limitada a um único endereço.
| Path / Query | Tipo | Padrão | Descrição |
|---|---|---|---|
address | string | — | Endereço de wallet do miner |
hours | integer | 24 | Tamanho da janela em horas |
O histórico por miner é registrado a partir da primeira conexão do endereço, então janelas de tempo mais longas vão sendo preenchidas gradualmente conforme os dados se acumulam.
Conexão Stratum
Conecte seu ASIC à SoloFury via Stratum V1. 9 regiões no mundo para roteamento global de baixa latência.
// Host = [region]-[coin].solofury.com (Atlanta has no region prefix)
// Regions: (none)=Atlanta · eu-=Frankfurt · jp-=Tokyo · asia-=Singapore
// lat-=Sao Paulo · pnw-=Seattle · me-=Tel Aviv · afr-=Johannesburg · uk-=London
// Coins: bch · btc · bc2 · bch2 · xec
// Ports: BTC 6060-6062 · BCH 7070-7072 · BC2 8080-8082 · BCH2 8585-8587 · XEC 9090-9092
// Examples (3 ports per coin = failover)
stratum+tcp://btc.solofury.com:6060 // BTC · Atlanta
stratum+tcp://eu-bch.solofury.com:7070 // BCH · Frankfurt
stratum+tcp://jp-xec.solofury.com:9090 // XEC · Tokyo
stratum+tcp://asia-btc.solofury.com:6060 // BTC · Singapore
stratum+tcp://uk-bc2.solofury.com:8080 // BC2 · London
// Worker format
Username: YOUR_WALLET_ADDRESS.WORKER_NAME
Password: x Rate limits e notas
Exemplos
# All 5 coin pools
curl -s https://solofury.com/api-btc/pool | jq .
curl -s https://solofury.com/api/pool | jq . # BCH (no suffix)
curl -s https://solofury.com/api-bc2/pool | jq .
curl -s https://solofury.com/api-bch2/pool | jq .
curl -s https://solofury.com/api-xec/pool | jq .
# Network info
curl -s https://solofury.com/api/network
# Per-miner stats
curl -s https://solofury.com/api/client/YOUR_WALLET_ADDRESS
# Time-series chart (24h, 5-min granularity)
curl -s "https://solofury.com/api/info/chart?hours=24"// Browser or Node.js (with fetch polyfill)
const coins = ['-btc', '', '-bc2', '-bch2', '-xec'];
const stats = await Promise.all(
coins.map(c => fetch(`https://solofury.com/api${c}/pool`).then(r => r.json()))
);
for (const [i, p] of stats.entries()) {
const coin = ['BTC', 'BCH', 'BC2', 'BCH2', 'XEC'][i];
console.log(`${coin}: ${(p.totalHashRate/1e12).toFixed(1)} TH/s · ${p.totalMiners} miners · ${p.fee}% fee`);
}import requests
def pool_stats(coin=''):
suffix = '' if coin == 'bch' else f'-{coin}'
r = requests.get(f'https://solofury.com/api{suffix}/pool', timeout=5)
return r.json()
for coin in ['btc', 'bch', 'bc2', 'bch2', 'xec']:
s = pool_stats(coin)
th = s['totalHashRate'] / 1e12
print(f'{coin.upper():<5} {th:.1f} TH/s · {s["totalMiners"]} miners · fee {s["fee"]}%')Integrações
A API da SoloFury segue as convenções do setor e é compatível com as ferramentas de mining padrão.