Skip to main content
In addition to scheduling climate presets for a thermostat, you can activate a configured climate preset immediately. When you activate a climate preset, it overrides any scheduled climate preset that is already active on the thermostat. Activating a climate preset returns an action attempt that enables you to track the progress of the action. Poll this action attempt, until the action completes. Further, Seam emits a thermostat.temperature_reached_set_point event when the thermostat reports a temperature within 1° Celsius of the heating or cooling set point specified in the climate preset that you’ve activated. You can configure a webhook to watch for this event.

Activate a Climate Preset

To activate a climate preset, issue a /thermostats/activate_climate_preset request and specify the climate_preset_key of the desired climate preset.
Request:
await seam.thermostats.activateClimatePreset({
  device_id: '2d488679-6f07-4810-aed2-e726872c1dd5',
  climate_preset_key: 'occupied',
})
Response:
{
  "status": "success",
  "action_attempt_id": "05de2295-d1dc-4748-aae3-9931658bde20",
  "action_type": "ACTIVATE_CLIMATE_PRESET",
  "result": {},
  "error": null
}

Poll the Action Attempt

Activating a climate preset returns an action attempt. Use the action_attempt_id from this response to poll the associated action attempt using the /action_attempts/get request. When the activation completes successfully, the status of the action attempt changes to success.
Request:
await seam.actionAttempts.get(
  action_attempt_id: "05de2295-d1dc-4748-aae3-9931658bde20"
);
Response:
{
  "status": "success",
  "action_attempt_id": "05de2295-d1dc-4748-aae3-9931658bde20",
  "action_type": "ACTIVATE_CLIMATE_PRESET",
  "result": {},
  "error": null
}