Download OpenAPI specification:Download
This is an API for Mining Rig Monitor Software.
This endpoint helps submitting an ASIC specification. This API should be called once time at boot.
Asic specification
model required | string ASIC Model |
model_variant | string ASIC Model Variant |
firmware_version required | string ASIC Firmware Version |
software_version required | string ASIC Software Version |
{- "model": "Ice River KS5L",
- "model_variant": "12TH",
- "firmware_version": "BOOT_3_1_image_1.0",
- "software_version": "ICM168_3_2_10_ks5L_miner_ICM168_3_2_10_ks5L_bg"
}
{- "message": "Invalid API_CODE"
}
This endpoint helps submitting an ASIC Monitor Data / Operation Data
Asic monitor data
hashrate_5_min required | number 5 mins hashrate, in ASIC KS5L, check JSON key named |
hashrate_30_min | number 30 mins hashrate, in ASIC KS5L, check JSON key named |
hashrate_uom required | string Hashrate unit of measurement, in ASIC KS5L, check JSON key named |
pool_rejection_rate | number Pool rejection rate, in ASIC KS5L, check JSON key named |
uptime required | string Uptime, in ASIC KS5L, check JSON key named There is another idea of sending this value in second(long integer), but I would like to keep this value original. I think another ASIC would follow the same format. |
pool_1_address required | string The first pool address, check JSON key named |
pool_2_address | string The second pool address, check JSON key named |
pool_3_address | string The third pool address, check JSON key named |
pool_1_user required | string The first pool's user address, check JSON key named |
pool_2_user | string The second pool's user address, check JSON key named |
pool_3_user | string The third pool's user address, check JSON key named |
pool_1_state required | string Connection state of ASIC to the first pool, check JSON key named
|
pool_2_state | string Connection state of ASIC to the second pool, check JSON key named
|
pool_3_state | string Connection state of ASIC to the third pool, check JSON key named
|
pool_1_accepted_share | integer Number of accpted shares submitting to the first pool. Check JSON key in |
pool_2_accepted_share | integer Number of accpted shares submitting to the second pool. Check JSON key in |
pool_3_accepted_share | integer Number of accpted shares submitting to the third pool. Check JSON key in |
pool_1_rejected_share | integer Number of rejected shares submitting to the first pool. Check JSON key in |
pool_2_rejected_share | integer Number of rejected shares submitting to the second pool. Check JSON key in |
pool_3_rejected_share | integer Number of rejected shares submitting to the third pool. Check JSON key in |
hashboard_1_hashrate_5_min | float The average hashrate of the first hashboard in 5 minutes. Check JSON key named The original value is in string format, ex: 3283.87G. When submit to the Mining Rig Monitor, please remove the unit. This field only accept number. The unit of measurement has a separeted field named |
hashboard_2_hashrate_5_min | float The average hashrate of the second hashboard in 5 minutes. Check JSON key named The original value is in string format, ex: 3283.87G. When submit to the Mining Rig Monitor, please remove the unit. This field only accept number. The unit of measurement has a separeted field named |
hashboard_3_hashrate_5_min | float The average hashrate of the third hashboard in 5 minutes. Check JSON key named The original value is in string format, ex: 3283.87G. When submit to the Mining Rig Monitor, please remove the unit. This field only accept number. The unit of measurement has a separeted field named |
hashboard_1_hashrate_30_min | float The average hashrate of the first hashboard in 5 minutes. Check JSON key named The original value is in string format, ex: 3283.87G. When submit to the Mining Rig Monitor, please remove the unit. This field only accept number. The unit of measurement has a separeted field named |
hashboard_2_hashrate_30_min | float The average hashrate of the second hashboard in 5 minutes. Check JSON key named The original value is in string format, ex: 3283.87G. When submit to the Mining Rig Monitor, please remove the unit. This field only accept number. The unit of measurement has a separeted field named |
hashboard_3_hashrate_30_min | float The average hashrate of the third hashboard in 5 minutes. Check JSON key named The original value is in string format, ex: 3283.87G. When submit to the Mining Rig Monitor, please remove the unit. This field only accept number. The unit of measurement has a separeted field named |
hashboard_1_temp_1 | float The first temperature of the first hashboard. Check the JSON key named |
hashboard_1_temp_2 | float The second temperature of the first hashboard. Check the JSON key named |
hashboard_2_temp_1 | float The first temperature of the second hashboard. Check the JSON key named |
hashboard_2_temp_2 | float The second temperature of the second hashboard. Check the JSON key named |
hashboard_3_temp_1 | float The first temperature of the third hashboard. Check the JSON key named |
hashboard_3_temp_2 | float The second temperature of the third hashboard. Check the JSON key named |
fan_1_speed required | integer The speed of first fan in |
fan_2_speed | integer The speed of second fan in |
fan_3_speed | integer The speed of third fan in |
fan_4_speed | integer The speed of forth fan in |
lan_ip required | string The local IP |
wan_ip | string The public/internet/wan IP |
coin_name required | string Coin name |
power required | float Power(Walt) |
{- "hashrate_5_min": 13135,
- "hashrate_30_min": 8642,
- "hashrate_uom": "GH/s",
- "pool_rejection_rate": 0.0001,
- "uptime": "07:23:50:20",
- "pool_1_address": "stratum+tcp://asia1.kaspa-pool.org:4441",
- "pool_2_address": "stratum+tcp://asia1.kaspa-pool.org:4441",
- "pool_3_address": "stratum+tcp://asia1.kaspa-pool.org:4441",
- "pool_1_user": "kaspa:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.worker_1",
- "pool_2_user": "kaspa:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.worker_1",
- "pool_3_user": "kaspa:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.worker_1",
- "pool_1_state": "Connected",
- "pool_2_state": "Unconnected",
- "pool_3_state": "Unconnected",
- "pool_1_accepted_share": 100000,
- "pool_2_accepted_share": 0,
- "pool_3_accepted_share": 0,
- "pool_1_rejected_share": 0,
- "pool_2_rejected_share": 0,
- "pool_3_rejected_share": 0,
- "hashboard_1_hashrate_5_min": 1234.56,
- "hashboard_2_hashrate_5_min": 1234.56,
- "hashboard_3_hashrate_5_min": 1234.56,
- "hashboard_1_hashrate_30_min": 1234.56,
- "hashboard_2_hashrate_30_min": 1234.56,
- "hashboard_3_hashrate_30_min": 1234.56,
- "hashboard_1_temp_1": 50,
- "hashboard_1_temp_2": 55,
- "hashboard_2_temp_1": 50,
- "hashboard_2_temp_2": 55,
- "hashboard_3_temp_1": 50,
- "hashboard_3_temp_2": 55,
- "fan_1_speed": 5855,
- "fan_2_speed": 5900,
- "fan_3_speed": 5900,
- "fan_4_speed": 5855,
- "lan_ip": "192.168.18.50",
- "wan_ip": "50.85.22.87",
- "coin_name": "Kaspa",
- "power": 3500
}
{- "message": "Invalid API_CODE"
}
This endpoint helps fetch ASIC Miner expected status such as:
{- "asic_expected_status": "on",
- "light_expected_status": "on"
}
This endpoint helps fetch ASIC Miner expected status such as:
No API_CODE
required in HTTP header.
asic_api_code_list | Array of strings |
{- "asic_api_code_list": [
- "873337a5b4a56821a342c744f32acf1e",
- "9d42acfdaa46208839effa7ba032bdc3"
]
}
{- "key_name_dynamic_api_code": {
- "asic_expected_status": "on",
- "light_expected_status": "on"
}
}
This endpoint helps submitting cpu/gpu mining rig specification. This API should be called once time at boot.
CPU/GPU rig specification
motherboard_name required | string Motherboard name |
cpu_name required | string CPU name For linux, |
ram_size required | string The first RAM size, All the ram information can be get with |
gpu_1_name | string GPU name |
gpu_2_name | string |
gpu_3_name | string |
gpu_4_name | string |
gpu_5_name | string |
gpu_6_name | string |
gpu_7_name | string |
gpu_8_name | string |
{- "motherboard_name": "Supermicro X10DRL-i 1.01",
- "cpu_name": "Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz",
- "ram_size": "8GB",
- "gpu_1_name": "NVIDIA GeForce RTX 3080",
- "gpu_2_name": "NVIDIA GeForce RTX 3080",
- "gpu_3_name": "NVIDIA GeForce RTX 3080",
- "gpu_4_name": "NVIDIA GeForce RTX 3080",
- "gpu_5_name": "NVIDIA GeForce RTX 3080",
- "gpu_6_name": "NVIDIA GeForce RTX 3080",
- "gpu_7_name": "NVIDIA GeForce RTX 3080",
- "gpu_8_name": "NVIDIA GeForce RTX 3080"
}
{- "message": "Invalid API_CODE"
}
This endpoint helps submitting cpu/gpu mining rig - monitor data. This api should be call every minute
CPU/GPU rig - monitor data
cpu_temp | integer CPU Temterature in Celcius |
cpu_hashrate | integer CPU Hashrate |
cpu_hashrate_uom | string CPU Hashrate - unit of measurement |
cpu_algorithm | string CPU Hashrate Algorithm |
cpu_coin_name | string CPU coin name |
cpu_pool_address | string |
cpu_wallet | string |
gpu_1_core_temp | integer GPU 1 - Core Temterature in Celcius |
gpu_2_core_temp | integer |
gpu_3_core_temp | integer |
gpu_4_core_temp | integer |
gpu_5_core_temp | integer |
gpu_6_core_temp | integer |
gpu_7_core_temp | integer |
gpu_8_core_temp | integer |
gpu_1_mem_temp | integer GPU 1 - Mem Temterature in Celcius |
gpu_2_mem_temp | integer |
gpu_3_mem_temp | integer |
gpu_4_mem_temp | integer |
gpu_5_mem_temp | integer |
gpu_6_mem_temp | integer |
gpu_7_mem_temp | integer |
gpu_8_mem_temp | integer |
gpu_1_hashrate_1 | integer GPU 1 - Hashrate 1 |
gpu_2_hashrate_1 | integer |
gpu_3_hashrate_1 | integer |
gpu_4_hashrate_1 | integer |
gpu_5_hashrate_1 | integer |
gpu_6_hashrate_1 | integer |
gpu_7_hashrate_1 | integer |
gpu_8_hashrate_1 | integer |
gpu_1_hashrate_2 | integer GPU 1 - Hashrate 2 |
gpu_2_hashrate_2 | integer |
gpu_3_hashrate_2 | integer |
gpu_4_hashrate_2 | integer |
gpu_5_hashrate_2 | integer |
gpu_6_hashrate_2 | integer |
gpu_7_hashrate_2 | integer |
gpu_8_hashrate_2 | integer |
gpu_1_core_clock | integer GPU 1 - core clock |
gpu_2_core_clock | integer |
gpu_3_core_clock | integer |
gpu_4_core_clock | integer |
gpu_5_core_clock | integer |
gpu_6_core_clock | integer |
gpu_7_core_clock | integer |
gpu_8_core_clock | integer |
gpu_1_mem_clock | integer GPU 1 - mem clock |
gpu_2_mem_clock | integer |
gpu_3_mem_clock | integer |
gpu_4_mem_clock | integer |
gpu_5_mem_clock | integer |
gpu_6_mem_clock | integer |
gpu_7_mem_clock | integer |
gpu_8_mem_clock | integer |
gpu_1_power | integer GPU 1 - power in walt |
gpu_2_power | integer |
gpu_3_power | integer |
gpu_4_power | integer |
gpu_5_power | integer |
gpu_6_power | integer |
gpu_7_power | integer |
gpu_8_power | integer |
gpu_hashrate_uom_1 | string GPU hashrate 1 - unit of measurement |
gpu_hashrate_uom_2 | string GPU hashrate 2 - unit of measurement, for dual mining |
gpu_algorithm_1 | string GPU algorithm 1 |
gpu_algorithm_2 | string GPU algorithm 2 |
gpu_coin_name_1 | string GPU coin name 1 |
gpu_coin_name_2 | string GPU coin name 2 |
gpu_pool_address_1 | string |
gpu_pool_address_2 | string |
gpu_wallet_address_1 | string |
gpu_wallet_address_2 | string |
lan_ip | string LAN IP |
wan_ip | string WAN/PUBLIC/Internet IP |
uptime | string uptime |
{- "cpu_temp": 60,
- "cpu_hashrate": 17,
- "cpu_hashrate_uom": "kh/s",
- "cpu_algorithm": "RandomX",
- "cpu_coin_name": "Monero",
- "cpu_pool_address": "string",
- "cpu_wallet": "string",
- "gpu_1_core_temp": 65,
- "gpu_2_core_temp": 60,
- "gpu_3_core_temp": 61,
- "gpu_4_core_temp": 62,
- "gpu_5_core_temp": 62,
- "gpu_6_core_temp": 62,
- "gpu_7_core_temp": 62,
- "gpu_8_core_temp": 62,
- "gpu_1_mem_temp": 63,
- "gpu_2_mem_temp": 64,
- "gpu_3_mem_temp": 61,
- "gpu_4_mem_temp": 62,
- "gpu_5_mem_temp": 63,
- "gpu_6_mem_temp": 64,
- "gpu_7_mem_temp": 61,
- "gpu_8_mem_temp": 62,
- "gpu_1_hashrate_1": 60,
- "gpu_2_hashrate_1": 60,
- "gpu_3_hashrate_1": 60,
- "gpu_4_hashrate_1": 60,
- "gpu_5_hashrate_1": 60,
- "gpu_6_hashrate_1": 60,
- "gpu_7_hashrate_1": 60,
- "gpu_8_hashrate_1": 60,
- "gpu_1_hashrate_2": 60,
- "gpu_2_hashrate_2": 60,
- "gpu_3_hashrate_2": 60,
- "gpu_4_hashrate_2": 60,
- "gpu_5_hashrate_2": 60,
- "gpu_6_hashrate_2": 60,
- "gpu_7_hashrate_2": 60,
- "gpu_8_hashrate_2": 60,
- "gpu_1_core_clock": 60,
- "gpu_2_core_clock": 60,
- "gpu_3_core_clock": 60,
- "gpu_4_core_clock": 60,
- "gpu_5_core_clock": 60,
- "gpu_6_core_clock": 60,
- "gpu_7_core_clock": 60,
- "gpu_8_core_clock": 60,
- "gpu_1_mem_clock": 60,
- "gpu_2_mem_clock": 60,
- "gpu_3_mem_clock": 60,
- "gpu_4_mem_clock": 60,
- "gpu_5_mem_clock": 60,
- "gpu_6_mem_clock": 60,
- "gpu_7_mem_clock": 60,
- "gpu_8_mem_clock": 60,
- "gpu_1_power": 60,
- "gpu_2_power": 60,
- "gpu_3_power": 60,
- "gpu_4_power": 60,
- "gpu_5_power": 60,
- "gpu_6_power": 60,
- "gpu_7_power": 60,
- "gpu_8_power": 60,
- "gpu_hashrate_uom_1": "MH/s",
- "gpu_hashrate_uom_2": "SOL/s",
- "gpu_algorithm_1": "Ethash",
- "gpu_algorithm_2": "Autokylos",
- "gpu_coin_name_1": "Ethereum",
- "gpu_coin_name_2": "Ergo",
- "gpu_pool_address_1": "string",
- "gpu_pool_address_2": "string",
- "gpu_wallet_address_1": "string",
- "gpu_wallet_address_2": "string",
- "lan_ip": "192.168.15.6",
- "wan_ip": "54.66.85.99",
- "uptime": "00:00:39:34"
}
{- "message": "Invalid API_CODE"
}
Get mining playbook list for a given CPU/GPU miner
[- {
- "id": 60,
- "software_name": "XMRig",
- "software_version": "6.22.2",
- "module_name": "Miner.XMRIG_6.22.2",
- "command_argument": "--no-color --url $POOL_ADDRESS --algo rx/0 --user $WALLET_ADDRESS --pass $WORKER_NAME",
- "coin_name_1": "Monero",
- "coin_name_2": "Raven",
- "algorithm_1": "RandomX",
- "algorithm_2": "KawPow"
}
]
This endpoint helps fetch ASIC Miner expected status such as:
{- "asic_expected_status": "on",
- "light_expected_status": "on"
}
This endpoint helps fetch ASIC Miner expected status such as:
No API_CODE
required in HTTP header.
asic_api_code_list | Array of strings |
{- "asic_api_code_list": [
- "873337a5b4a56821a342c744f32acf1e",
- "9d42acfdaa46208839effa7ba032bdc3"
]
}
{- "key_name_dynamic_api_code": {
- "asic_expected_status": "on",
- "light_expected_status": "on"
}
}