Skip to content

Monitoring endpoints

The client provides typed methods for every RainbowMiner monitoring endpoint. All methods are async on RainbowMinerClient and sync on SyncRainbowMinerClient — they share the same names and signatures.

Server & system

Method Endpoint Returns Description
get_version() /version Version RainbowMiner version info
get_info() /info Any General server information
get_current_profit() /currentprofit CurrentProfit Current profit across all miners
get_status() /status Status Server status (paused, running, etc.)
is_server() /isserver bool Whether this instance is a server
get_remote_ip() /remoteip str \| None Remote IP of the client
get_console(ts=) /console Console Console output with optional timestamp filter
get_cpu_info() /cpuinfo CPUInfo CPU information
get_sys_info() /sysinfo SysInfo System information
get_uptime() /uptime Uptime RainbowMiner uptime
get_system_uptime() /systemuptime Uptime Operating system uptime
get_computer_stats() /computerstats ComputerStats CPU/GPU temps, load, memory

Example: Current profit

from rainbowminer_api_client import RainbowMinerClient


async with RainbowMinerClient("192.168.1.50", 4000) as client:
    profit = await client.get_current_profit()
    print(f"BTC: {profit.ProfitBTC}")
    print(f"USD: {profit.ProfitUSD}")
    print(f"EUR: {profit.ProfitEUR}")

Example: System info

from rainbowminer_api_client import SyncRainbowMinerClient


with SyncRainbowMinerClient("192.168.1.50", 4000) as client:
    sysinfo = client.get_sys_info()
    print(f"OS: {sysinfo.OSName} {sysinfo.OSVersion}")
    print(f"CPU: {sysinfo.CPUName}")

    cpu = client.get_cpu_info()
    print(f"CPU load: {cpu.LoadPercentage}%")

Miners

Method Endpoint Returns Description
get_active_miners() /activeminers list[ActiveMiner] Currently active miners
get_running_miners() /runningminers list[RunningMiner] Currently running miners
get_failed_miners() /failedminers list[FailedMiner] Miners that have failed
get_remote_miners(mode=) /remoteminers list[RemoteMiner] \| list[RemoteMinerEntry] Remote miners; mode changes shape
get_miners_needing_benchmark() /minersneedingbenchmark list[Any] Miners needing re-benchmark
get_miner_info() /minerinfo list[MinerInfo] Detailed miner info
get_miner_speeds() /minerspeeds list[MinerSpeed] Speed per miner
get_miners() /miners list[Miner] All miners
get_fastest_miners() /fastestminers list[FastestMiner] Fastest miner per algorithm
get_avail_miners() /availminers list[str] Available miner names
get_avail_miner_stats() /availminerstats list[AvailMinerStat] Stats for available miners
get_disabled() /disabled list[str] Disabled miner names
get_miner_log(logfile=) /getminerlog MinerLogResult Miner log contents
get_miner_stats() /minerstats list[MinerStat] Per-miner statistics

Example: Active miners

from rainbowminer_api_client import RainbowMinerClient


async with RainbowMinerClient("192.168.1.50", 4000) as client:
    miners = await client.get_active_miners()
    for m in miners:
        print(f"{m.Name} ({m.Algorithm}): {m.Speed} {m.SpeedUnit}")

Pools & algorithms

Method Endpoint Returns Description
get_algorithms() /algorithms list[str] Supported algorithm names
get_pools() /pools list[Pool] Active pools
get_all_pools() /allpools list[AllPool] All known pools
get_new_pools() /newpools list[NewPool] Pools available to add

Balances & earnings

Method Endpoint Returns Description
get_balances(...) /balances list[Balance] \| BinaryResponse Pool balances
get_payouts() /payouts list[Payout] Payout history
get_earnings(...) /earnings EarningsResult Earnings report
get_rates(format=) /rates dict[str, float] \| list[RateTableRow] Exchange rates

CSV vs structured

get_balances(), get_earnings(), and get_rates() support optional parameters to control the response format. See the binary endpoints for CSV download helpers.

Devices

Method Endpoint Returns Description
get_all_devices() /alldevices list[AllDevice] All devices
get_devices() /devices list[Device] Active devices
get_platforms() /platforms dict[str, Any] Platform info
get_device_combos() /devicecombos list[DeviceCombo] Device combinations
get_device_config() /getdeviceconfig list[DeviceConfigEntry] Device config entries
get_oc_profiles() /ocprofiles list[OCProfile] Overclock profiles

Stats & totals

Method Endpoint Returns Description
get_stats() /stats dict[str, Any] General stats
get_totals() /totals list[Total] Totals per algorithm/coin
get_activity(as_csv=) /activity list[Any] \| BinaryResponse Activity log

Config

Method Endpoint Returns Description
get_config() /config Config Full server config
get_user_config() /userconfig UserConfig User config
get_setup() /setup.json SetupJson Setup info

MRR (MiningRigRentals)

Method Endpoint Returns Description
get_mrr_stats() /mrrstats list[MrrStat] MRR stats
get_mrr_rigs() /mrrrigs list[MrrRig] MRR rigs
get_mrr_control() /mrrcontrol list[MrrControl] MRR control status

Misc

Method Endpoint Returns Description
load_config(config_name=, pool_name=) /loadconfig Any Load a config
load_config_json(config_name=) /loadconfigjson LoadConfigJsonResult Load config as JSON
get_wtm_urls() /getwtmurls dict[str, str] WhatToMine URLs
get_session_vars() /sessionvars dict[str, Any] Session variables
get_session() /session dict[str, Any] Session info
get_gc() /gc dict[str, Any] Garbage collection stats
get_watchdog_timers() /watchdogtimers list[Any] Watchdog timers
get_crash_counter() /crashcounter list[Any] Crash counter
get_asyncloader_jobs() /asyncloaderjobs list[AsyncloaderJob] Async loader jobs
get_dec_sep() /decsep str Decimal separator
get_clients(include_server=) /clients list[Client] Connected clients
get_download_list() /downloadlist list[DownloadItem] Available downloads

Next steps