Create action
Creates a bulk miner action (execution plan) such as reboot, sleep, wake up, or configuration changes. 'Change Temperature Control' requires at least one params.temp_control field, temperatures are in degrees Celsius, and fields a miner model doesn't support are ignored. Thresholds sent together are checked server-side and rejected with 400 if out of order: chip target, hot and dangerous must ascend, and water-inlet hot and startup must not exceed water-inlet dangerous. Its fields dispatch as two groups — the ATM group (enabled, startup_minutes, post_ramp_minutes, minimum_profile, maximum_profile, chip_temperature_buffer, water_inlet_temperature_buffer) and the threshold group (everything else) — and a request spanning both produces two Action Log entries, of which the response returns one; find the sibling with GET /v2/commander/actions. Setting any ATM-group field requires the same subscription entitlement as 'Change ATM Settings' (403 otherwise). Both 'Change ATM Settings' and 'Change Temperature Control' can appear as a response action_type, because the two share a downstream step type: an ATM request may read back as 'Change Temperature Control'.
Authorization
LuxorAPIKey Use your API key here.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v2/commander/actions" \ -H "Content-Type: application/json" \ -d '{ "action_type": "Reboot", "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811", "miner_ids": [ "string" ] }'{ "id": "a-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "action_type": "Reboot", "status": "PENDING", "site_id": "b0a5fad8-1234-5678-9abc-def012345678", "created_at": "2026-02-20T12:00:00Z", "initiated_by": "[email protected]", "total_miners": 10, "url": "/v2/commander/actions/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}{ "statusCode": 400, "code": "FST_ERR_VALIDATION", "error": "Bad Request", "message": "body/end_date Required"}{ "statusCode": 400, "code": "FST_ERR_VALIDATION", "error": "Bad Request", "message": "body/end_date Required"}{ "statusCode": 400, "code": "FST_ERR_VALIDATION", "error": "Bad Request", "message": "body/end_date Required"}