Aircon · Schema

Thermostat

Represents the state and configuration of a smart thermostat or HVAC control unit.

Air ConditioningHVACClimate ControlIoTSmart HomeThermostatBuilding AutomationEnergy Management

Properties

Name Type Description
id string Unique identifier for the thermostat device.
name string Human-readable name of the thermostat.
current_temperature number Current measured temperature in degrees.
target_temperature number Target temperature setpoint.
temperature_unit string Unit of temperature measurement.
hvac_mode string Current HVAC operating mode.
hvac_status string Current HVAC operation status.
fan_mode string Fan operation mode.
humidity number Current relative humidity percentage.
target_humidity number Target relative humidity percentage.
is_online boolean Whether the thermostat is currently online.
location string Physical location or room of the thermostat.
model string Thermostat model identifier.
firmware_version string Current firmware version of the device.
last_updated string Timestamp of the last status update.
View JSON Schema on GitHub

JSON Schema

aircon-thermostat-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/aircon/refs/heads/main/json-schema/aircon-thermostat-schema.json",
  "title": "Thermostat",
  "description": "Represents the state and configuration of a smart thermostat or HVAC control unit.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the thermostat device.",
      "example": "thermostat-a1b2c3"
    },
    "name": {
      "type": "string",
      "description": "Human-readable name of the thermostat.",
      "example": "Living Room Thermostat"
    },
    "current_temperature": {
      "type": "number",
      "description": "Current measured temperature in degrees.",
      "example": 72.5
    },
    "target_temperature": {
      "type": "number",
      "description": "Target temperature setpoint.",
      "example": 70.0
    },
    "temperature_unit": {
      "type": "string",
      "enum": ["celsius", "fahrenheit"],
      "description": "Unit of temperature measurement.",
      "example": "fahrenheit"
    },
    "hvac_mode": {
      "type": "string",
      "enum": ["off", "heat", "cool", "auto", "fan_only", "dry"],
      "description": "Current HVAC operating mode.",
      "example": "cool"
    },
    "hvac_status": {
      "type": "string",
      "enum": ["idle", "heating", "cooling", "fan", "off"],
      "description": "Current HVAC operation status.",
      "example": "cooling"
    },
    "fan_mode": {
      "type": "string",
      "enum": ["auto", "on", "circulate", "low", "medium", "high"],
      "description": "Fan operation mode.",
      "example": "auto"
    },
    "humidity": {
      "type": "number",
      "minimum": 0,
      "maximum": 100,
      "description": "Current relative humidity percentage.",
      "example": 45.0
    },
    "target_humidity": {
      "type": "number",
      "minimum": 0,
      "maximum": 100,
      "description": "Target relative humidity percentage.",
      "example": 50.0
    },
    "is_online": {
      "type": "boolean",
      "description": "Whether the thermostat is currently online.",
      "example": true
    },
    "location": {
      "type": "string",
      "description": "Physical location or room of the thermostat.",
      "example": "Living Room"
    },
    "model": {
      "type": "string",
      "description": "Thermostat model identifier.",
      "example": "ecobee4"
    },
    "firmware_version": {
      "type": "string",
      "description": "Current firmware version of the device.",
      "example": "4.8.7.132"
    },
    "last_updated": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of the last status update.",
      "example": "2026-04-19T10:30:00Z"
    }
  },
  "required": ["id", "hvac_mode", "current_temperature"]
}