Welcome to the Google Home Developer Center, the new destination for learning how to develop smart home actions. Note: You'll continue building actions in the Actions console.
Stay organized with collections Save and categorize content based on your preferences.

Smart Home TemperatureSetting Trait Schema

action.devices.traits.TemperatureSetting - This trait covers handling both temperature point and modes.

Device ATTRIBUTES

Devices with this trait may report the following attributes as part of the SYNC operation. To learn more about handling SYNC intents, see Intent fulfillment.

Attributes Type Description
availableThermostatModes

Required.

Describes the thermostat modes this device can support.

Supports one of the following:
0 String

Deprecated

Comma-separated list of modes supported by this specific device. New integrations should use the Array form of this attribute.

1 Array

List of modes supported by this specific device.

[item, ...] String

Name of the supported mode.

Supported values:

off
Heating/Cooling activity disabled
heat
Device supports heating
cool
Device supports cooling
on
Restore the previous mode of the device. The on mode does not appear in the mode selection screen because the on mode, by design, is used to restore the previous mode of the device.
heatcool
Maintaining heating/cooling target as a range
auto
Automatic mode with temperature set by a schedule or learned behavior
fan-only
Fan running without heat/cool activity
purifier
Purifying mode
eco
Energy-saving mode
dry
Dry mode
thermostatTemperatureRange Object

Contains two float values that indicate the supported temperature range for this device (in degrees Celsius).

minThresholdCelsius Number

Required.

Minimum threshold of the temperature range.

maxThresholdCelsius Number

Required.

Maximum threshold of the temperature range.

thermostatTemperatureUnit String

Required.

The display unit the device is set to by default. Google reports temperature information using the display unit.

Supported values:

C
F
bufferRangeCelsius Number

(Default: 2)

Specifies the minimum offset between heat-cool setpoints in degrees Celsius, if heatcool mode is supported.

commandOnlyTemperatureSetting Boolean

(Default: false)

Indicates if the device supports using one-way (true) or two-way (false) communication. Set this attribute to true if the device cannot respond to a QUERY intent or Report State for this trait.

queryOnlyTemperatureSetting Boolean

(Default: false)

Required if the device supports query-only execution. This attribute indicates if the device can only be queried for state information, and cannot be controlled.

Examples

Thermostat device that supports discrete heating and cooling

{
  "availableThermostatModes": [
    "off",
    "heat",
    "cool",
    "on"
  ],
  "thermostatTemperatureUnit": "F"
}

Command-only thermostat device

{
  "availableThermostatModes": [
    "off",
    "heat",
    "cool",
    "on"
  ],
  "thermostatTemperatureUnit": "C",
  "commandOnlyTemperatureSetting": true,
  "queryOnlyTemperatureSetting": false
}

Device STATES

Devices with this trait may report the following states as part of the QUERY operation. To learn more about handling QUERY intents, see Intent fulfillment.

States Type Description
activeThermostatMode String

Currently active mode of the device, from the list of availableThermostatModes. If no mode is currently active, set to none.

Supported values:

none
No active mode
off
Heating/Cooling activity disabled
heat
Device supports heating
cool
Device supports cooling
on
Restore the previous mode of the device. The on mode does not appear in the mode selection screen because the on mode, by design, is used to restore the previous mode of the device.
heatcool
Maintaining heating/cooling target as a range
auto
Automatic mode with temperature set by a schedule or learned behavior
fan-only
Fan running without heat/cool activity
purifier
Purifying mode
eco
Energy-saving mode
dry
Dry mode
targetTempReachedEstimateUnixTimestampSec Integer

A timestamp representing the estimated time when the target temperature will be reached.

thermostatHumidityAmbient Number

Represents the relative level of the ambient humidity, if supported by the device.

Contains one of the following items:
0 Object

States for fixed set point.

thermostatMode String

Required.

Current mode of the device, from the list of availableThermostatModes.

Supported values:

none
No active mode
off
Heating/Cooling activity disabled
heat
Device supports heating
cool
Device supports cooling
on
Restore the previous mode of the device
heatcool
Maintaining heating/cooling target as a range
auto
Automatic mode with temperature set by a schedule or learned behavior
fan-only
Fan running without heat/cool activity
purifier
Purifying mode
eco
Energy-saving mode
dry
Dry mode
thermostatTemperatureAmbient Number

Required.

Current observed temperature, in degrees Celsius.

thermostatTemperatureSetpoint Number

Required.

Current temperature set point (single target), in degrees Celsius.

1 Object

States for set point range.

thermostatMode String

Required.

Current mode of the device, from the list of availableThermostatModes.

Supported values:

none
No active mode
off
Heating/Cooling activity disabled
heat
Device supports heating
cool
Device supports cooling
on
Restore the previous mode of the device
heatcool
Maintaining heating/cooling target as a range
auto
Automatic mode with temperature set by a schedule or learned behavior
fan-only
Fan running without heat/cool activity
purifier
Purifying mode
eco
Energy-saving mode
dry
Dry mode
thermostatTemperatureAmbient Number

Required.

Current observed temperature, in degrees Celsius.

thermostatTemperatureSetpointHigh Number

Required.

Current high point if in heatcool mode, for a range.

thermostatTemperatureSetpointLow Number

Required.

Current low point if in heatcool mode, for a range.

Examples

What is the current device temperature?

{
  "activeThermostatMode": "cool",
  "thermostatMode": "cool",
  "thermostatTemperatureSetpoint": 23,
  "thermostatTemperatureAmbient": 25.1
}

What is the current device temperature?

{
  "activeThermostatMode": "none",
  "thermostatMode": "heatcool",
  "thermostatTemperatureSetpointHigh": 26,
  "thermostatTemperatureSetpointLow": 22,
  "thermostatTemperatureAmbient": 25.1
}

Device COMMANDS

Devices with this trait may respond to the following commands as part of the EXECUTE operation. To learn more about handling EXECUTE intents, see Intent fulfillment.

action.devices.commands.ThermostatTemperatureSetpoint

Set the target temperature for a thermostat device.

Parameters

Parameters Type Description
thermostatTemperatureSetpoint Number

Required.

Target temperature setpoint. Supports up to one decimal place.

Examples

Set the device temperature to 22 degrees.

{
  "command": "action.devices.commands.ThermostatTemperatureSetpoint",
  "params": {
    "thermostatTemperatureSetpoint": 22
  }
}

An error occurred setting the target temperature.

Supported values:

alreadyAtMax
alreadyAtMin
targetAlreadyReached
valueOutOfRange

action.devices.commands.ThermostatTemperatureSetRange

Set a target temperature range for a thermostat device.

This command requires the following attributes:
{
  "availableThermostatModes": [
    "heatcool"
  ]
}

Parameters

Parameters Type Description
thermostatTemperatureSetpointHigh Number

Required.

High target setpoint for the range. Requires heatcool mode support.

thermostatTemperatureSetpointLow Number

Required.

Low target setpoint for the range. Requires heatcool mode support.

Examples

Hold the temperature between 22 and 26 degrees.

{
  "command": "action.devices.commands.ThermostatTemperatureSetRange",
  "params": {
    "thermostatTemperatureSetpointHigh": 26,
    "thermostatTemperatureSetpointLow": 22
  }
}

An error occurred setting the target range.

Supported values:

alreadyAtMax
alreadyAtMin
lockedToRange
rangeTooClose
targetAlreadyReached
valueOutOfRange

action.devices.commands.ThermostatSetMode

Set the target operating mode for a thermostat device.

Parameters

Parameters Type Description
thermostatMode String

Required.

Target mode, from the list of availableThermostatModes.

Supported values:

off
Heating/Cooling activity disabled
heat
Device supports heating
cool
Device supports cooling
on
Restore the previous mode of the device
heatcool
Maintaining heating/cooling target as a range
auto
Automatic mode with temperature set by a schedule or learned behavior
fan-only
Fan running without heat/cool activity
purifier
Purifying mode
eco
Energy-saving mode
dry
Dry mode

Examples

Set the device to heatcool mode.

{
  "command": "action.devices.commands.ThermostatSetMode",
  "params": {
    "thermostatMode": "heatcool"
  }
}

An error occurred setting the target mode.

Supported values:

inAutoMode
inAwayMode
inDryMode
inEcoMode
inFanOnlyMode
inHeatOrCool
inHumidifierMode
inOffMode
inPurifierMode

action.devices.commands.TemperatureRelative

Adjust the target temperature relative to the current state.

This command requires the following attributes:
{
  "commandOnlyTemperatureSetting": true
}

Parameters

The payload contains one of the following:

Adjust by degree.

Parameters Type Description
thermostatTemperatureRelativeDegree Number

Required.

The exact number of degrees for the temperature to change (for example, "Turn down 5 degrees").

Adjust by weight.

Parameters Type Description
thermostatTemperatureRelativeWeight Integer

Required.

This indicates the amount of ambiguous temperature change from a small amount ("Turn down a little"), to a large amount ("A lot warmer").

Examples

Increase temperature 5 degrees

{
  "command": "action.devices.commands.TemperatureRelative",
  "params": {
    "thermostatTemperatureRelativeDegree": 5
  }
}

Decrease the temperature a lot

{
  "command": "action.devices.commands.TemperatureRelative",
  "params": {
    "thermostatTemperatureRelativeWeight": -5
  }
}

An error occurred adjusting the temperature.

Supported values:

alreadyAtMax
alreadyAtMin
valueOutOfRange

Sample utterances

de-DE

  • Heizmodus anmachen
  • Mach den Heizmodus aus
  • Schalt den Heizmodus vom Thermostat aus
  • Temperatur auf 20 bis 25 Grad einstellen.
  • Thermostat auf 20 bis 25 Grad stellen.
  • Thermostat im Schlafzimmer kälter stellen
  • Wohnzimmer auf Kühlen umstellen
  • bitte dreh das Thermostat ein bisschen herunter
  • bitte dreh das Thermostat etwas höher
  • bitte mach es im Wohnzimmer kühler
  • bitte mach es in der Küche etwas kälter
  • bitte stell das Thermostat 5 Grad wärmer ein
  • bitte stell das Thermostat auf 21 Grad für Kühlen ein
  • bitte stell das Thermostat auf 30 Grad
  • bitte stell die Temperatur im Schlafzimmer auf 20 Grad
  • dreh das Thermostat wärmer bitte
  • dreh die Temperatur im Schlafzimmer etwas nach oben
  • dreh die Temperatur um 5 Grad runter
  • erhöhe bitte die Temperatur im Bad
  • erhöhe die Temperatur um 2 Grad
  • mach es im Wohnzimmer 2 Grad wärmer
  • senke die Temperatur im Wohnzimmer um 5 Grad
  • stell bitte das Thermostat auf Kühlen
  • stell das Thermostat 5 Grad kälter ein
  • stell die Kühlung auf 20 Grad ein

en-US

  • Turn off heat mode.
  • change the thermostat heat cool between 70 and 80
  • change to eco mode
  • cool down in the living room
  • cool down the house a little
  • increase the temperature on the thermostat
  • maintain the thermostat heat at 78
  • make it 2 degrees warmer
  • make it cooler by 2 degrees
  • make thermostat warmer a little bit
  • put on cooling mode
  • put the thermostat on cool
  • raise the temperature downstairs by 2 degrees
  • raise the temperature on thermostat by 5 degrees
  • set 70 degrees on the thermostat
  • set heat cool mode to between 62 and 79 degrees
  • set my temperature 80 degrees
  • set the heat to 72
  • set the temperature to cool at 70
  • set the thermostat at 70 in cool mode
  • turn down 5 degrees on thermostat
  • turn down the living room temp 2 degrees
  • turn off thermostat heat mode
  • turn thermostat a little lower
  • turn thermostat lower
  • warm up the living room
  • warm up the living room a little

es-ES

  • 25 grados de frío en la cocina
  • Ajustar el termostato entre 21 y 26 grados
  • Ajustar la temperatura entre 21 y 27 grados
  • activar el modo calefacción
  • apagar el aire acondicionado del termostato
  • aumenta 10 grados la temperatura del horno
  • aumenta la temperatura de la cocina
  • baja algo la calefacción
  • baja la temperatura 5 grados
  • baja la temperatura del termostato
  • configurar el modo calefacción
  • disminuye la temperatura de la cocina un poco
  • hace demasiado calor aquí
  • me ajustas a 25 grados el modo calor
  • me gustaría ajustar el termostato del salón a 25 grados con la calefacción
  • pon a 20 grados la temperatura
  • pon en modo calefacción el termostato de la cocina
  • pon la temperatura de la cocina a 20 grados
  • puedes subir un poco la temperatura en el salón
  • quiero bajar el nest 5 grados
  • quiero el modo aire acondicionado a 25 grados
  • quitar el modo frío del baño
  • sube 5 grados en la cocina
  • sube la calefacción
  • súbeme el termostato del salón un poquito
  • súbeme más la temperatura 10 grados

fr-FR

  • Allumer le mode chaud .
  • Mets en mode chaud .
  • Mets la température entre 21 et 23 degrés .
  • Mets la température à 17 degrés .
  • Mets le mode froid du thermostat à 19 degrés .
  • Mettre le mode froid à 19 degrés .
  • Mettre le thermostat entre 70 et 80 degrés .
  • Régler le mode chaud du thermostat à 22 degrés .
  • Régler le mode chaud à 22 degrés .
  • augmente la température de 2 degrés
  • augmente un peu la température dans la chambre
  • baisse la température de la chambre
  • baisse le thermostat
  • baisse un peu la température dans la cuisine
  • baisse un peu le thermostat
  • baisser le thermostat de 5 degrés
  • coupe le mode chaud
  • descends la température de 3 degrés
  • désactiver le mode frais du thermostat
  • mets le thermostat en mode frais
  • mets le thermostat à 10 degrés
  • mettre 2 degrés de moins dans la cuisine
  • monte la température de la chambre
  • monte la température de la salle de bain de 3 degrés
  • monte le thermostat
  • monte le thermostat de 2 degrés
  • monte un peu le thermostat
  • Éteins le mode chaud du thermostat .

Device ERRORS

See the full list of errors and exceptions.