Retrieving Thermostats
Learn how to retrieve all thermostats or a specific thermostat by ID.
Retrieving All Thermostats
To retrieve all thermostats, issue a List Thermostats request. For filtering options, see the request body parameters for the List Thermostats request.
Request:
seam.thermostats.list()
Response:
[Device(
device_id='518f692b-f865-4590-8c3e-3849e9984c75',
device_type='ecobee_thermostat',
location=None,
properties={
'available_hvac_mode_settings': ['off', 'cool', 'heat', 'heat_cool'],
'current_climate_setting': {
'cooling_set_point_celsius': 25,
'cooling_set_point_fahrenheit': 77,
'heating_set_point_celsius': 20,
'heating_set_point_fahrenheit': 68,
'hvac_mode_setting': 'heat_cool',
'manual_override_allowed': True
},
'ecobee_metadata': {
'device_name': 'Thermostat 1',
'ecobee_device_id': 'a64074f3-a0aa-4dbb-bbd3-f17f61701602'
},
'fan_mode_setting': 'auto',
'has_direct_power': True,
'image_alt_text': 'Ecobee 3 Lite Thermostat',
'image_url': 'https://connect.getseam.com/assets/images/devices/ecobee_3-lite_front.png',
'is_cooling': False,
'is_fan_running': False,
'is_heating': False,
'is_temporary_manual_override_active': False,
'manufacturer': 'ecobee',
'max_cooling_set_point_celsius': 33.333333333333336,
'max_cooling_set_point_fahrenheit': 92,
'max_heating_set_point_celsius': 26.11111111111111,
'max_heating_set_point_fahrenheit': 79,
'min_cooling_set_point_celsius': 18.333333333333336,
'min_cooling_set_point_fahrenheit': 65,
'min_heating_cooling_delta_celsius': 2.7777777777777777,
'min_heating_cooling_delta_fahrenheit': 5,
'min_heating_set_point_celsius': 7.222222222222222,
'min_heating_set_point_fahrenheit': 45,
'model': {
'accessory_keypad_supported': False,
'display_name': 'Thermostat',
'manufacturer_display_name': 'Ecobee',
'offline_access_codes_supported': False,
'online_access_codes_supported': True
},
'name': 'Thermostat 1',
'online': True,
'relative_humidity': 0.36,
'temperature_celsius': 21.11111111111111,
'temperature_fahrenheit': 70
},
capabilities_supported=['thermostat'],
errors=[],
warnings=[],
connected_account_id='2c00bc71-bca5-42c2-a1c5-74fd93ffcba1',
workspace_id='398d80b7-3f96-47c2-b85a-6f8ba21d07be',
created_at='2023-10-30T10:36:18.387Z',
is_managed=True
)]
Retrieving Individual Thermostats
To retrieve a specific thermostat, include the desired device_id
in the Get Thermostat or Get Device request.
Request:
device_id = "518f692b-f865-4590-8c3e-3849e9984c75"
thermostat = seam.thermostats.get(device_id)
pprint(thermostat)
Response:
Device(
device_id='518f692b-f865-4590-8c3e-3849e9984c75',
device_type='ecobee_thermostat',
location=None,
properties={
'available_hvac_mode_settings': ['off', 'cool', 'heat', 'heat_cool'],
'current_climate_setting': {
'cooling_set_point_celsius': 25,
'cooling_set_point_fahrenheit': 77,
'heating_set_point_celsius': 20,
'heating_set_point_fahrenheit': 68,
'hvac_mode_setting': 'heat_cool',
'manual_override_allowed': True
},
'ecobee_metadata': {
'device_name': 'Thermostat 1',
'ecobee_device_id': 'a64074f3-a0aa-4dbb-bbd3-f17f61701602'
},
'fan_mode_setting': 'auto',
'has_direct_power': True,
'image_alt_text': 'Ecobee 3 Lite Thermostat',
'image_url': 'https://connect.getseam.com/assets/images/devices/ecobee_3-lite_front.png',
'is_cooling': False,
'is_fan_running': False,
'is_heating': False,
'is_temporary_manual_override_active': False,
'manufacturer': 'ecobee',
'max_cooling_set_point_celsius': 33.333333333333336,
'max_cooling_set_point_fahrenheit': 92,
'max_heating_set_point_celsius': 26.11111111111111,
'max_heating_set_point_fahrenheit': 79,
'min_cooling_set_point_celsius': 18.333333333333336,
'min_cooling_set_point_fahrenheit': 65,
'min_heating_cooling_delta_celsius': 2.7777777777777777,
'min_heating_cooling_delta_fahrenheit': 5,
'min_heating_set_point_celsius': 7.222222222222222,
'min_heating_set_point_fahrenheit': 45,
'model': {
'accessory_keypad_supported': False,
'display_name': 'Thermostat',
'manufacturer_display_name': 'Ecobee',
'offline_access_codes_supported': False,
'online_access_codes_supported': True
},
'name': 'Thermostat 1',
'online': True,
'relative_humidity': 0.36,
'temperature_celsius': 21.11111111111111,
'temperature_fahrenheit': 70
},
capabilities_supported=['thermostat'],
errors=[],
warnings=[],
connected_account_id='2c00bc71-bca5-42c2-a1c5-74fd93ffcba1',
workspace_id='398d80b7-3f96-47c2-b85a-6f8ba21d07be',
created_at='2023-10-30T10:36:18.387Z',
is_managed=True
)
Last updated
Was this helpful?