Skip to main content
PyTado -- Pythonize your central heating

API Documentation for PyTado

Module PyTado.interface.api

Tado

Interacts with a Tado thermostat via public my.tado.com API.

Example usage: http = Http() http.device_activation() # Activate the device t = Tado(http) t.get_climate(1) # Get climate, zone 1.

change_presence(self, presence: <enum 'Presence'>)

Sets HomeState to presence

Parameters:

get_air_comfort(self)

Gets air quality information

Parameters:

get_auto_geofencing_supported(self)

Return whether the Tado Home supports auto geofencing

Parameters:

get_capabilities(self, zone)

Gets current capabilities of zone.

Parameters:

get_climate(self, zone)

Gets temp (centigrade) and humidity (% RH) for zone.

Parameters:

get_device_info(self, device_id, cmd)

Gets information about devices with option to get specific info i.e. cmd='temperatureOffset'

Parameters:

get_devices(self)

Gets device information.

Parameters:

get_eiq_consumption_overview(self, date)

Get consumption overview data for a specific month

Args: date (str): The year-month to get the consumption overview for.

Returns: dict: Consumption overview data for the specified month

Parameters:

get_eiq_meter_readings(self)

Get Energy IQ meter readings

Parameters:

get_eiq_tariffs(self)

Get Energy IQ tariff history

Parameters:

get_heating_circuits(self)

Gets available heating circuits

Parameters:

get_historic(self, zone, date)

Gets historic information on given date for zone

Parameters:

get_home_state(self)

Gets current state of Home.

Parameters:

get_me(self)

Gets home information.

Parameters:

get_mobile_devices(self)

Gets information about mobile devices

Parameters:

get_open_window_detected(self, zone)

Returns whether an open window is detected.

Parameters:

get_running_times(self, date)

Get the running times from the Minder API

Parameters:

get_schedule(self, zone: <class 'int'>, timetable: <enum 'Timetable'>, day)

Get the JSON representation of the schedule for a zone. Zone has 3 different schedules, one for each timetable (see setTimetable)

Parameters:

get_state(self, zone)

Gets current state of Zone.

Parameters:

get_timetable(self, zone: <class 'int'>)

Get the Timetable type currently active

Parameters:

get_users(self)

Gets active users in home

Parameters:

get_weather(self)

Gets outside weather data

Parameters:

get_window_state(self, zone)

Returns the state of the window for zone

Parameters:

get_zone_control(self, zone)

Get zone control information

Parameters:

get_zone_overlay_default(self, zone: <class 'int'>)

Get current overlay default settings for zone.

Parameters:

get_zone_state(self, zone: <class 'int'>)

Gets current state of Zone as a TadoZone object.

Parameters:

get_zone_states(self)

Gets current states of all zones.

Parameters:

get_zones(self)

Gets zones information.

Parameters:

reset_open_window(self, zone)

Sets the window in zone to closed

Parameters:

reset_zone_overlay(self, zone)

Delete current overlay

Parameters:

set_auto(self)

Sets HomeState to AUTO

Parameters:

set_away(self)

Sets HomeState to AWAY

Parameters:

set_child_lock(self, device_id, child_lock)

Sets the child lock on a device

Parameters:

set_eiq_meter_readings(self, date, reading)

Send Meter Readings to Tado, date format is YYYY-MM-DD, reading is without decimals

Parameters:

set_eiq_tariff(self, from_date, to_date, tariff, unit, is_period)

Send Tariffs to Tado, date format is YYYY-MM-DD, tariff is with decimals, unit is either m3 or kWh, set is_period to true to set a period of price

Parameters:

set_home(self)

Sets HomeState to HOME

Parameters:

set_open_window(self, zone)

Sets the window in zone to open Note: This can only be set if an open window was detected in this zone

Parameters:

set_schedule(self, zone, timetable: <enum 'Timetable'>, day, data)

Set the schedule for a zone, day is required

Parameters:

set_temp_offset(self, device_id, offset, measure)

Set the Temperature offset on the device.

Parameters:

set_timetable(self, zone: <class 'int'>, timetable: <enum 'Timetable'>)

Set the Timetable type currently active id = 0 : ONE_DAY (MONDAY_TO_SUNDAY) id = 1 : THREE_DAY (MONDAY_TO_FRIDAY, SATURDAY, SUNDAY) id = 3 : SEVEN_DAY (MONDAY, TUESDAY, WEDNESDAY ...)

Parameters:

set_zone_heating_circuit(self, zone, heating_circuit)

Sets the heating circuit for a zone

Parameters:

set_zone_overlay(self, zone, overlay_mode, set_temp, duration, device_type, power, mode, fan_speed, swing, fan_level, vertical_swing, horizontal_swing)

Set current overlay for a zone

Parameters:

TadoX

Interacts with a Tado thermostat via hops.tado.com (Tado X) API.

Example usage: http = Http() http.device_activation() # Activate the device t = TadoX(http) t.get_climate(1) # Get climate, room 1.

change_presence(self, presence: <enum 'Presence'>)

Sets HomeState to presence

Parameters:

get_air_comfort(self)

Gets air quality information

Parameters:

get_auto_geofencing_supported(self)

Return whether the Tado Home supports auto geofencing

Parameters:

get_capabilities(self, zone)

Gets current capabilities of zone.

Parameters:

get_climate(self, zone)

Gets temp (centigrade) and humidity (% RH) for zone.

Parameters:

get_device_info(self, device_id, cmd)

Gets information about devices with option to get specific info i.e. cmd='temperatureOffset'

Parameters:

get_devices(self)

Gets device information.

Parameters:

get_eiq_consumption_overview(self, date)

Get consumption overview data for a specific month

Args: date (str): The year-month to get the consumption overview for.

Returns: dict: Consumption overview data for the specified month

Parameters:

get_eiq_meter_readings(self)

Get Energy IQ meter readings

Parameters:

get_eiq_tariffs(self)

Get Energy IQ tariff history

Parameters:

get_flow_temperature_optimization(self)

Get the current flow temperature optimization

Parameters:

get_heating_circuits(self)

Gets available heating circuits

Parameters:

get_historic(self, zone, date)

Gets historic information on given date for zone

Parameters:

get_home_state(self)

Gets current state of Home.

Parameters:

get_me(self)

Gets home information.

Parameters:

get_mobile_devices(self)

Gets information about mobile devices

Parameters:

get_open_window_detected(self, zone)

Returns whether an open window is detected.

Parameters:

get_running_times(self, date)

Get the running times from the Minder API

Parameters:

get_schedule(self, zone: <class 'int'>, timetable: <enum 'Timetable'>, day)

Get the JSON representation of the schedule for a zone. Zone has 3 different schedules, one for each timetable (see setTimetable)

Parameters:

get_state(self, zone)

Gets current state of Zone.

Parameters:

get_timetable(self, zone: <class 'int'>)

Get the Timetable type currently active

Parameters:

get_users(self)

Gets active users in home

Parameters:

get_weather(self)

Gets outside weather data

Parameters:

get_window_state(self, zone)

Returns the state of the window for zone

Parameters:

get_zone_control(self, zone)

Get zone control information

Parameters:

get_zone_overlay_default(self, zone: <class 'int'>)

Get current overlay default settings for zone.

Parameters:

get_zone_state(self, zone: <class 'int'>)

Gets current state of Zone as a TadoXZone object.

Parameters:

get_zone_states(self)

Gets current states of all zones.

Parameters:

get_zones(self)

Gets zones (or rooms in Tado X API) information.

Parameters:

reset_open_window(self, zone)

Sets the window in zone to closed

Parameters:

reset_zone_overlay(self, zone)

Delete current overlay

Parameters:

set_auto(self)

Sets HomeState to AUTO

Parameters:

set_away(self)

Sets HomeState to AWAY

Parameters:

set_child_lock(self, device_id, child_lock)

" Set and toggle the child lock on the device.

Parameters:

set_eiq_meter_readings(self, date, reading)

Send Meter Readings to Tado, date format is YYYY-MM-DD, reading is without decimals

Parameters:

set_eiq_tariff(self, from_date, to_date, tariff, unit, is_period)

Send Tariffs to Tado, date format is YYYY-MM-DD, tariff is with decimals, unit is either m3 or kWh, set is_period to true to set a period of price

Parameters:

set_flow_temperature_optimization(self, max_flow_temperature: <class 'float'>)

Set the flow temperature optimization.

max_flow_temperature: float, the maximum flow temperature in Celsius

Parameters:

set_home(self)

Sets HomeState to HOME

Parameters:

set_open_window(self, zone)

Sets the window in zone to open Note: This can only be set if an open window was detected in this zone

Parameters:

set_schedule(self, zone, timetable: <enum 'Timetable'>, day, data)

Set the schedule for a zone, day is not required for Tado X API.

example data [ { "start": "00:00", "end": "07:05", "dayType": "MONDAY", "setting": { "power": "ON", "temperature": { "value": 18 } } }, { "start": "07:05", "end": "22:05", "dayType": "MONDAY", "setting": { "power": "ON", "temperature": { "value": 22 } } }, { "start": "22:05", "end": "24:00", "dayType": "MONDAY", "setting": { "power": "ON", "temperature": { "value": 18 } } } ]

Parameters:

set_temp_offset(self, device_id, offset, measure)

Set the Temperature offset on the device.

Parameters:

set_timetable(self, zone: <class 'int'>, timetable: <enum 'Timetable'>)

Set the Timetable type currently active id = 0 : ONE_DAY (MONDAY_TO_SUNDAY) id = 1 : THREE_DAY (MONDAY_TO_FRIDAY, SATURDAY, SUNDAY) id = 3 : SEVEN_DAY (MONDAY, TUESDAY, WEDNESDAY ...)

Parameters:

set_zone_heating_circuit(self, zone, heating_circuit)

Sets the heating circuit for a zone

Parameters:

set_zone_overlay(self, zone, overlay_mode, set_temp, duration, device_type, power, mode, fan_speed, swing, fan_level, vertical_swing, horizontal_swing)

Set current overlay for a zone, a room in Tado X API.

Parameters:

Module PyTado.interface

Tado

Interacts with a Tado thermostat via public API.

Example usage: t = Tado() t.device_activation() # Activate device t.get_climate(1) # Get climate, zone 1.

changePresence(self, presence)

Sets HomeState to presence (Deprecated)

Parameters:

device_activation(self)

Activates the device.

Parameters:

device_activation_status(self)

Returns the status of the device activation.

Parameters:

device_verification_url(self)

Returns the URL for device verification.

Parameters:

getAirComfort(self)

Gets air quality information (Deprecated)

Parameters:

getAppUsers(self)

Gets getAppUsers data (deprecated)

Parameters:

getAutoGeofencingSupported(self)

Return whether the Tado Home supports auto geofencing (deprecated)

Parameters:

getCapabilities(self, zone)

Gets current capabilities of Zone zone. (deprecated)

Parameters:

getClimate(self, zone)

Gets temp (centigrade) and humidity (% RH) for Zone zone. (deprecated)

Parameters:

getDeviceInfo(self, device_id, cmd)

Gets information about devices with option to get specific info i.e. cmd='temperatureOffset' (Deprecated)

Parameters:

getDevices(self)

Gets device information. (deprecated)

Parameters:

getEIQMeterReadings(self)

Get Energy IQ meter readings (Deprecated)

Parameters:

getEIQTariffs(self)

Get Energy IQ tariff history (Deprecated)

Parameters:

getHistoric(self, zone, date)

Gets historic information on given date for zone. (Deprecated)

Parameters:

getHomeState(self)

Gets current state of Home. (deprecated)

Parameters:

getMe(self)

Gets home information. (deprecated)

Parameters:

getMobileDevices(self)

Gets information about mobile devices (Deprecated)

Parameters:

getOpenWindowDetected(self, zone)

Returns whether an open window is detected. (Deprecated)

Parameters:

getSchedule(self, zone, _id, day)

Get the JSON representation of the schedule for a zone. Zone has 3 different schedules, one for each timetable (see setTimetable)

Parameters:

getState(self, zone)

Gets current state of Zone. (deprecated)

Parameters:

getTimetable(self, zone)

Get the Timetable type currently active (Deprecated)

Parameters:

getWeather(self)

Gets outside weather data (Deprecated)

Parameters:

getWindowState(self, zone)

Returns the state of the window for zone (Deprecated)

Parameters:

getZoneOverlayDefault(self, zone)

Get current overlay default settings for zone. (Deprecated)

Parameters:

getZoneState(self, zone)

Gets current state of Zone as a TadoZone object. (deprecated)

Parameters:

getZoneStates(self)

Gets current states of all zones. (deprecated)

Parameters:

getZones(self)

Gets zones information. (deprecated)

Parameters:

get_refresh_token(self)

Retrieve the refresh token from the current api connection.

Returns: str | None: The current refresh token, or None if not available.

Parameters:

resetOpenWindow(self, zone)

Sets the window in zone to closed (Deprecated)

Parameters:

resetZoneOverlay(self, zone)

Delete current overlay (Deprecated)

Parameters:

setAuto(self)

Sets HomeState to AUTO (Deprecated)

Parameters:

setAway(self)

Sets HomeState to AWAY (Deprecated)

Parameters:

setChildLock(self, device_id, enabled)

Set the child lock for a device

Parameters:

setEIQMeterReadings(self, date, reading)

Send Meter Readings to Tado (Deprecated)

date format is YYYY-MM-DD, reading is without decimals

Parameters:

setEIQTariff(self, from_date, to_date, tariff, unit, is_period)

Send Tariffs to Tado (Deprecated)

date format is YYYY-MM-DD, tariff is with decimals, unit is either m3 or kWh, set is_period to true to set a period of price

Parameters:

setHome(self)

Sets HomeState to HOME (Deprecated)

Parameters:

setOpenWindow(self, zone)

Sets the window in zone to open (Deprecated)

Parameters:

setSchedule(self, zone, _id, day, data)

Set the schedule for a zone, day is required

Parameters:

setTempOffset(self, device_id, offset, measure)

Set the Temperature offset on the device. (Deprecated)

Parameters:

setTimetable(self, zone, _id)

Set the Timetable type currently active (Deprecated) id = 0 : ONE_DAY (MONDAY_TO_SUNDAY) id = 1 : THREE_DAY (MONDAY_TO_FRIDAY, SATURDAY, SUNDAY) id = 3 : SEVEN_DAY (MONDAY, TUESDAY, WEDNESDAY ...)

Parameters:

setZoneOverlay(self, zone, overlayMode, setTemp, duration, deviceType, power, mode, fanSpeed, swing, fanLevel, verticalSwing, horizontalSwing)

Set current overlay for a zone (Deprecated)

Parameters:

Module PyTado.zone

TadoXZone

Tado Zone data structure for hops.tado.com (Tado X) API.

Attributes:

TadoZone

Tado Zone data structure for my.tado.com.

Attributes: