Overview
The/command endpoint lets you control thermostat settings programmatically from the Control API (port 8082).
Endpoint
Request
Headers
Body
Parameters
Supported Commands
set_temperature
Set the target temperature. Routes to the shared bucket.
Temperatures are always in Celsius (4.5–32°C). The thermostat displays them in the user’s preferred scale. Temperature changes also set
target_change_pending: true to wake the display.set_mode
Set the HVAC mode. Routes to the shared bucket.
The server checks device capabilities before applying the mode. Requesting
heat on a cooling-only device returns a 400 error."eco" is not a valid mode here — use set_away instead to engage eco mode.set_away
Enable or disable eco (away) mode via manual_eco_all in the structure bucket.
This uses
manual_eco_all rather than the away field, because the firmware’s schedule preconditioning can revert away-triggered eco but respects manual eco. A manual_eco_timestamp is automatically set to the current time.set_fan
Control the fan. Routes to the device bucket. Requires has_fan: true.
set_eco_temperatures
Set the eco mode (away) temperature bounds. Routes to the device bucket.
set_schedule
Replace the full weekly schedule. Routes to the schedule bucket (full replacement, not merge).
vermust be2schedule_mode:"HEAT","COOL", or"RANGE"- Day keys:
"0"(Monday) through"6"(Sunday) time: seconds from midnight (0–86399)type:"HEAT","COOL", or"RANGE"RANGEtype requires"temp-min"and"temp-max"instead of"temp"
set_schedule_mode
Change the active schedule mode without replacing the schedule. Routes to the shared bucket.
set_device_setting
Set one or more cloud-writable device bucket fields. Routes to the device bucket. Only fields from the whitelist are accepted.
Whitelisted device fields
Whitelisted device fields
Response
Success (200 OK)
Error (400 Bad Request)
Error (500 Internal Server Error)
Examples
Next Steps
GET /status
Query current device state
GET /api/devices
List all connected devices