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:

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:

get_air_comfort(self)

Gets air quality information

Parameters:

get_auto_geofencing_supported(self)

Return whether the Tado Home supports auto geofencing

Parameters:

get_boiler_install_state(self, bridge_id: <class 'str'>, auth_key: <class 'str'>)

Get the boiler wiring installation state from home by bridge endpoint

Parameters:

get_boiler_max_output_temperature(self, bridge_id: <class 'str'>, auth_key: <class 'str'>)

Get the boiler max output temperature from home by bridge endpoint

Parameters:

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

Gets capabilities of the specified zone.

Parameters:

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

Gets the climate for the specified zone.

Parameters:

get_device_info(self, device_id: <class 'str'>, cmd: <class 'str'>)

Get information about a device.

Parameters:

get_devices(self)

Gets device information.

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: <class 'int'>, day_report_date: <class 'datetime.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: <class 'int'>)

Returns whether an open window is detected.

Parameters:

get_running_times(self, from_date: <class 'datetime.date'>)

Get the running times from the Minder API

Parameters:

get_schedule(self, zone: <class 'int'>, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Gets the schedule for the specified zone.

Parameters:

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

Gets current state of Zone.

Parameters:

get_temp_offset(self, device_id: <class 'str'>)

Get the Temperature offset on the device.

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: <class 'int'>)

Returns the state of the window for zone

Parameters:

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

Gets the specified zone as a TadoZone or TadoRoom object.

Parameters:

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

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: <class 'int'>)

Sets the window in zone to closed

Parameters:

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

Resets the zone overlay for the specified zone.

Parameters:

set_auto(self)

Sets HomeState to AUTO

Parameters:

set_away(self)

Sets HomeState to AWAY

Parameters:

set_away_radius_in_meters(self, meters: <class 'int'>)

When the distance between home location and the location of a mobile device which can control this home is greater than this distance, tado considers the mobile device to be outside of home. Can be checked by calling get_installation().

Included is check to ignore request to less than 100 meters

Parameters:

set_boiler_max_output_temperature(self, bridge_id: <class 'str'>, auth_key: <class 'str'>, temperature_in_celcius: <class 'float'>)

Set the boiler max output temperature with home by bridge endpoint

Parameters:

set_child_lock(self, device_id: <class 'str'>, child_lock: <class 'bool'>)

Sets the child lock on a device

Parameters:

set_eiq_meter_readings(self, reading_date: <class 'datetime.date'>, reading: <class 'int'>)

Send Meter Readings to Tado, reading is without decimals

Parameters:

set_eiq_tariff(self, from_date: <class 'datetime.date'>, to_date: <class 'datetime.date'>, tariff: <class 'float'>, unit: <class 'str'>, is_period: <class 'bool'>)

Send Tariffs to Tado, 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: <class 'int'>)

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: <class 'int'>, data: list[PyTado.models.common.schedule.ScheduleElement[TempValue]] | PyTado.models.line_x.schedule.SetSchedule, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Sets the schedule for the specified zone.

Parameters:

set_temp_offset(self, device_id: <class 'str'>, offset: <class 'float'>, measure: <class 'str'>)

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: <class 'int'>, heating_circuit: <class 'int'>)

Sets the heating circuit for a zone

Parameters:

set_zone_overlay(self, zone: <class 'int'>, overlay_mode: <enum 'OverlayMode'>, set_temp: float | None, duration: datetime.timedelta | None, power: <enum 'Power'>, is_boost: bool | None, device_type: PyTado.types.ZoneType | None, mode: PyTado.types.HvacMode | None, fan_speed: PyTado.types.FanSpeed | None, swing: typing.Any, fan_level: PyTado.types.FanLevel | None, vertical_swing: PyTado.types.VerticalSwing | None, horizontal_swing: PyTado.types.HorizontalSwing | None)

Sets a zone overlay for the specified zone.

Parameters:

TadoBase

Base class for Tado API classes. Provides all common functionality for pre line X and line X systems.

Attributes:

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

Sets HomeState to presence

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:

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: <class 'int'>)

Gets capabilities of the specified zone.

Parameters:

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

Gets the climate for the specified zone.

Parameters:

get_device_info(self, device_id: <class 'str'>, cmd: <class 'str'>)

Get information about a device.

Parameters:

get_devices(self)

Gets device information.

Parameters:

get_eiq_meter_readings(self)

Get Energy IQ meter readings

Parameters:

get_eiq_tariffs(self)

Get Energy IQ tariff history

Parameters:

get_historic(self, zone: <class 'int'>, day_report_date: <class 'datetime.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: <class 'int'>)

Returns whether an open window is detected.

Parameters:

get_running_times(self, from_date: <class 'datetime.date'>)

Get the running times from the Minder API

Parameters:

get_schedule(self, zone: <class 'int'>, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Gets the schedule for the specified zone.

Parameters:

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

Gets current state of Zone as a ZoneState or RoomState object.

Parameters:

get_users(self)

Gets active users in home

Parameters:

get_weather(self)

Gets outside weather data

Parameters:

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

Returns the state of the window for zone

Parameters:

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

Gets the specified zone as a TadoZone or TadoRoom object.

Parameters:

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

Gets current state of Zone as a ZoneState or RoomState object.

Parameters:

get_zone_states(self)

Gets current state of Zone as a TadoZone object.

Parameters:

get_zones(self)

Gets zones information.

Parameters:

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

Resets the zone overlay for the specified zone.

Parameters:

set_auto(self)

Sets HomeState to AUTO

Parameters:

set_away(self)

Sets HomeState to AWAY

Parameters:

set_away_radius_in_meters(self, meters: <class 'int'>)

When the distance between home location and the location of a mobile device which can control this home is greater than this distance, tado considers the mobile device to be outside of home. Can be checked by calling get_installation().

Included is check to ignore request to less than 100 meters

Parameters:

set_child_lock(self, device_id: <class 'str'>, child_lock: <class 'bool'>)

Set the child lock on the device.

Parameters:

set_eiq_meter_readings(self, reading_date: <class 'datetime.date'>, reading: <class 'int'>)

Send Meter Readings to Tado, reading is without decimals

Parameters:

set_eiq_tariff(self, from_date: <class 'datetime.date'>, to_date: <class 'datetime.date'>, tariff: <class 'float'>, unit: <class 'str'>, is_period: <class 'bool'>)

Send Tariffs to Tado, 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_schedule(self, zone: <class 'int'>, data: list[PyTado.models.common.schedule.ScheduleElement[TempValue]] | PyTado.models.line_x.schedule.SetSchedule, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Sets the schedule for the specified zone.

Parameters:

set_temp_offset(self, device_id: <class 'str'>, offset: <class 'float'>, measure: <class 'str'>)

Set the Temperature offset on the device.

Parameters:

set_zone_overlay(self, zone: <class 'int'>, overlay_mode: <enum 'OverlayMode'>, set_temp: float | None, duration: datetime.timedelta | None, power: <enum 'Power'>, is_boost: bool | None, device_type: PyTado.types.ZoneType | None, mode: PyTado.types.HvacMode | None, fan_speed: PyTado.types.FanSpeed | None, swing: typing.Any, fan_level: PyTado.types.FanLevel | None, vertical_swing: PyTado.types.VerticalSwing | None, horizontal_swing: PyTado.types.HorizontalSwing | None)

Sets a zone overlay for the specified 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.

boost_all_heating(self)

Boost mode, expires after 30 minutes.

Parameters:

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

Sets HomeState to presence

Parameters:

delete_eiq_tariff(self, reader_id: <class 'int'>)

Delete an earlier provided reading-id, like "8c46366f-f3a8-4aed-be08-ebe1de3ff260"

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:

disable_all_heating(self)

Sets all rooms off, frost protection.

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: <class 'int'>)

Gets capabilities of the specified zone.

Parameters:

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

Gets the climate for the specified zone.

Parameters:

get_device_info(self, device_id: <class 'str'>, cmd: <class 'str'>)

Gets information about devices

Parameters:

get_devices(self)

Gets device information.

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_historic(self, zone: <class 'int'>, day_report_date: <class 'datetime.date'>)

Gets historic information on given date for zone

Parameters:

get_home_state(self)

Gets current state of Home.

Parameters:

get_installation(self)

Gets home installation details.

Parameters:

get_me(self)

Gets home information.

Parameters:

get_mobile_devices(self)

Gets information about mobile devices

Parameters:

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

Returns whether an open window is detected.

Parameters:

get_running_times(self, from_date: <class 'datetime.date'>)

Get the running times from the Minder API

Parameters:

get_schedule(self, zone: <class 'int'>, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Gets the schedule for the specified zone.

Parameters:

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

Gets current state of zone/room.

Parameters:

get_users(self)

Gets active users in home

Parameters:

get_weather(self)

Gets outside weather data

Parameters:

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

Returns the state of the window for zone

Parameters:

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

Gets zone/room.

Parameters:

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

Gets current state of zone/room as a TadoXZone object.

Parameters:

get_zone_states(self)

Gets current states of all zones/rooms.

Parameters:

get_zones(self)

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

Parameters:

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

Sets the window in zone to closed

Parameters:

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

Resets the zone overlay for the specified zone.

Parameters:

resume_all_schedules(self)

Resumes regular schedule for all rooms, undo boost, disable heating and manual settings.

Parameters:

set_auto(self)

Sets HomeState to AUTO

Parameters:

set_away(self)

Sets HomeState to AWAY

Parameters:

set_away_radius_in_meters(self, meters: <class 'int'>)

When the distance between home location and the location of a mobile device which can control this home is greater than this distance, tado considers the mobile device to be outside of home. Can be checked by calling get_installation().

Included is check to ignore request to less than 100 meters

Parameters:

set_boiler_presence(self, b_present: <class 'bool'>)

Sets boiler present or not.

When setting the boiler presence to true with a boiler id, the tado api does not seem to generate any errors when you supply an unknown boiler id.

The call assists the user in finding the boiler by brand and model. This is supported by tado's graphql API, and NOT VIA THE API described in this definition.

Parameters:

set_child_lock(self, device_id: <class 'str'>, child_lock: <class 'bool'>)

" Set and toggle the child lock on the device.

Parameters:

set_eiq_meter_readings(self, reading_date: <class 'datetime.date'>, reading: <class 'int'>)

Send Meter Readings to Tado, reading is without decimals

Parameters:

set_eiq_tariff(self, from_date: <class 'datetime.date'>, to_date: <class 'datetime.date'>, tariff: <class 'float'>, unit: <class 'str'>, is_period: <class 'bool'>)

Send Tariffs to Tado, 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_incident_detection(self, b_present: <class 'bool'>)

Enable or disable incident detection setting for this home. {'supported': True, 'enabled': True}

Parameters:

set_manual_control(self, room_id: <class 'int'>, power: <class 'str'>, termination_type: <class 'str'>, m_temp: <class 'int'>, m_sec: <class 'int'>, m_boost: <class 'bool'>)

Sets manual control for a specific room.

room_id : obtain from get_rooms() power : ON, OFF Terminationtype: TIMER, NEXT_TIME_BLOCK, MANUAL m_boost : True or False

Remarks : m_temp : can NOT be zero when power = ON m_sec : can not be zero when setting termination type TIMER m_sec : do not include to Tado X if not TIMER power OFF : will enable frost protection, do NOT include BOOST and TEMPERATURE to Tado X

return : 0 all good -1 missing temperature -2 missing seconds for timer

Parameters:

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

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: <class 'int'>, data: list[PyTado.models.common.schedule.ScheduleElement[TempValue]] | PyTado.models.line_x.schedule.SetSchedule, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Sets the schedule for the specified zone.

Parameters:

set_temp_offset(self, device_id: <class 'str'>, offset: <class 'float'>, measure: <class 'str'>)

Set the Temperature offset on the device.

Parameters:

set_underfloor_heating_presence(self, b_present: <class 'bool'>)

Sets boiler present or not. Inform about the presence of underfloor heating in this home

Parameters:

set_zone_overlay(self, zone: <class 'int'>, overlay_mode: <enum 'OverlayMode'>, set_temp: float | None, duration: datetime.timedelta | None, power: <enum 'Power'>, is_boost: bool | None, device_type: PyTado.types.ZoneType | None, mode: PyTado.types.HvacMode | None, fan_speed: PyTado.types.FanSpeed | None, swing: typing.Any, fan_level: PyTado.types.FanLevel | None, vertical_swing: PyTado.types.VerticalSwing | None, horizontal_swing: PyTado.types.HorizontalSwing | None)

Sets a zone overlay for the specified zone.

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.

device_activation(self)

Activates the device and initializes the API client.

Raises: TadoException: If device activation fails

Parameters:

device_activation_status(self)

Returns the status of the device activation.

Returns: DeviceActivationStatus: The current activation status of the device

Parameters:

device_verification_url(self)

Returns the URL for device verification.

Returns: str | None: The verification URL or None if not available

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:

Module PyTado.zone

TadoRoom

Base class for Tado zone/room control.

This class provides the foundation for interacting with Tado zones/rooms, implementing common functionality and defining the interface that specific zone implementations must follow.

Attributes: id: The unique identifier of the zone/room _home: Reference to the parent Tado/TadoX instance _http: HTTP client for making API requests

Attributes:

get_capabilities(self)

Gets capabilities of the zone/room.

Parameters:

get_climate(self)

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

Parameters:

get_historic(self, day_report_date: <class 'datetime.date'>)

Gets historic information on given date for zone/room

Parameters:

get_schedule(self, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

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

Parameters:

reset_zone_overlay(self)

Delete current overlay

Parameters:

set_schedule(self, data: list[PyTado.models.common.schedule.ScheduleElement[TempValue]] | PyTado.models.line_x.schedule.SetSchedule, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Set heating schedule.

Tado X API args: - data: SetSchedule

Tado V3/V2 API args: - data: list[Schedule] - timetable: Timetable - day: DayType

Parameters:

set_zone_overlay(self, overlay_mode: <enum 'OverlayMode'>, set_temp: float | None, duration: datetime.timedelta | None, power: <enum 'Power'>, is_boost: bool | None, device_type: PyTado.types.ZoneType | None, mode: PyTado.types.HvacMode | None, fan_speed: PyTado.types.FanSpeed | None, swing: typing.Any, fan_level: PyTado.types.FanLevel | None, vertical_swing: PyTado.types.VerticalSwing | None, horizontal_swing: PyTado.types.HorizontalSwing | None)

Set zone overlay (manual control).

Tado X API args: - overlay_mode: OverlayMode - set_temp: float | None = None - duration: timedelta | None = None - power: Power = Power.ON - is_boost: bool = False

Tado V3/V2 API args: - overlay_mode: OverlayMode - set_temp: float | None = None - duration: timedelta | None = None - power: Power = Power.ON - device_type: ZoneType = ZoneType.HEATING - mode: HvacMode | None = None - fan_speed: FanSpeed | None = None - swing: Any = None - fan_level: FanLevel | None = None - vertical_swing: VerticalSwing | None = None - horizontal_swing: HorizontalSwing | None = None

Parameters:

update(self)

Force update of the zone's cached state.

This method clears the cached state and room data, forcing a fresh fetch on the next access. This is useful when the zone's state might have changed externally.

Parameters:

TadoZone

Tado Zone data structure for my.tado.com.

Attributes:

get_capabilities(self)

Gets capabilities of the zone/room.

Parameters:

get_climate(self)

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

Parameters:

get_historic(self, day_report_date: <class 'datetime.date'>)

Gets historic information on given date for zone/room

Parameters:

get_schedule(self, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

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

Parameters:

get_timetable(self)

Get the Timetable type currently active

Parameters:

get_zone_control(self)

Get zone control information

Parameters:

reset_open_window(self)

Sets the window in zone to closed

Parameters:

reset_zone_overlay(self)

Delete current overlay (Resume Schedule)

Parameters:

set_open_window(self)

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, data: list[PyTado.models.common.schedule.ScheduleElement[TempValue]] | PyTado.models.line_x.schedule.SetSchedule, timetable: PyTado.types.Timetable | None, day: PyTado.types.DayType | None)

Set the schedule for a zone, day is required

Parameters:

set_zone_heating_circuit(self, heating_circuit: <class 'int'>)

Sets the heating circuit for a zone

Parameters:

set_zone_overlay(self, overlay_mode: <enum 'OverlayMode'>, set_temp: float | None, duration: datetime.timedelta | None, power: <enum 'Power'>, is_boost: bool | None, device_type: PyTado.types.ZoneType | None, mode: PyTado.types.HvacMode | None, fan_speed: PyTado.types.FanSpeed | None, swing: typing.Any, fan_level: PyTado.types.FanLevel | None, vertical_swing: PyTado.types.VerticalSwing | None, horizontal_swing: PyTado.types.HorizontalSwing | None)

Set zone overlay (manual control).

Tado X API args: - overlay_mode: OverlayMode - set_temp: float | None = None - duration: timedelta | None = None - power: Power = Power.ON - is_boost: bool = False

Tado V3/V2 API args: - overlay_mode: OverlayMode - set_temp: float | None = None - duration: timedelta | None = None - power: Power = Power.ON - device_type: ZoneType = ZoneType.HEATING - mode: HvacMode | None = None - fan_speed: FanSpeed | None = None - swing: Any = None - fan_level: FanLevel | None = None - vertical_swing: VerticalSwing | None = None - horizontal_swing: HorizontalSwing | None = None

Parameters:

update(self)

Force update of the zone's cached state.

This method clears the cached state and room data, forcing a fresh fetch on the next access. This is useful when the zone's state might have changed externally.

Parameters: