Capability Guides 🌡️ ThermostatsCreating and Managing Climate Presets Activating a Climate Preset Learn how to activate a preconfigured climate preset immediately.
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.
To activate a climate preset, issue a /thermostats/activate_climate_preset
request and specify the climate_preset_key
of the desired climate preset.
Python cURL (bash) JavaScript Ruby PHP C# Java Go
Request:
Copy seam . thermostats . activate_climate_preset (
device_id = "2d488679-6f07-4810-aed2-e726872c1dd5" ,
climate_preset_key = "occupied"
)
Response:
Copy ActionAttempt(
action_attempt_id='05de2295-d1dc-4748-aae3-9931658bde20',
action_type='ACTIVATE_CLIMATE_PRESET',
error={},
result={},
status='success'
)
Request:
Copy curl -X 'POST' \
'https://connect.getseam.com/thermostats/activate_climate_preset' \
-H 'accept: application/json' \
-H "Authorization: Bearer ${SEAM_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"device_id": "2d488679-6f07-4810-aed2-e726872c1dd5",
"climate_preset_key": "occupied"
}'
Response:
Copy {
"action_attempt" : {
"status" : "pending" ,
"action_type" : "ACTIVATE_CLIMATE_PRESET" ,
"action_attempt_id" : "05de2295-d1dc-4748-aae3-9931658bde20" ,
"result" : null ,
"error" : null
} ,
"ok" : true
}
Request:
Copy await seam . thermostats .activateClimatePreset ({
device_id : "2d488679-6f07-4810-aed2-e726872c1dd5" ,
climate_preset_key : "occupied"
});
Response:
Copy {
status : 'success' ,
action_attempt_id : ' 05 de 2295 -d 1 dc -4748 -aae 3-9931658 bde 20 ' ,
action_type : 'ACTIVATE_CLIMATE_PRESET' ,
result : {} ,
error : null
}
Request:
Copy $seam -> thermostats -> activate_climate_preset (
device_id : "2d488679-6f07-4810-aed2-e726872c1dd5" ,
climate_preset_key : "occupied"
) ;
Response:
Copy {
"action_attempt_id" : "05de2295-d1dc-4748-aae3-9931658bde20" ,
"action_type" : "ACTIVATE_CLIMATE_PRESET" ,
"error" : null ,
"result" : {} ,
"status" : "success"
}
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
.
Python cURL (bash) JavaScript Ruby PHP C# Java Go
Request:
Copy seam . action_attempts . get (
action_attempt_id = "05de2295-d1dc-4748-aae3-9931658bde20"
)
Response:
Copy ActionAttempt(
action_attempt_id='05de2295-d1dc-4748-aae3-9931658bde20',
action_type='ACTIVATE_CLIMATE_PRESET',
error={},
result={},
status='success'
)
Request:
Copy # Use GET or POST.
curl -X 'GET' \
'https://connect.getseam.com/action_attempts/get' \
-H 'accept: application/json' \
-H 'Authorization: Bearer ${SEAM_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"action_attempt_id": "05de2295-d1dc-4748-aae3-9931658bde20"
}'
Response:
Copy {
"action_attempt": {
"status": "success",
"action_attempt_id": "05de2295-d1dc-4748-aae3-9931658bde20",
"action_type": "ACTIVATE_CLIMATE_PRESET",
"result": {},
"error": null
},
"ok": true
}
Request:
Copy await seam . actionAttempts .get (
action_attempt_id: "05de2295-d1dc-4748-aae3-9931658bde20"
);
Response:
Copy {
status : 'success' ,
action_attempt_id : ' 05 de 2295 -d 1 dc -4748 -aae 3-9931658 bde 20 ' ,
action_type : 'ACTIVATE_CLIMATE_PRESET' ,
result : {} ,
error : null
}
Request:
Copy $seam -> action_attempts -> get (
action_attempt_id : "05de2295-d1dc-4748-aae3-9931658bde20"
) ;
Response:
Copy {
"action_attempt_id" : "05de2295-d1dc-4748-aae3-9931658bde20" ,
"action_type" : "ACTIVATE_CLIMATE_PRESET" ,
"error" : null ,
"result" : {} ,
"status" : "success"
}