Skip to content

API Reference

delete_invitation(token)

Delete an invitation.

Parameters:

Name Type Description Default
token str

The token of the invitation to delete.

required

Returns:

Type Description
None

None.

end_manual_control(zone)

End the manual control of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Type Description
None

None

Result example
None

get_air_comfort()

Get all zones of your home.

Returns:

Name Type Description
freshness dict

A dictionary with the freshness of your home.

comfort list

A list of dictionaries with the comfort of each zone.

Result example
{
  "freshness":{
    "value":"FAIR",
    "lastOpenWindow":"2020-09-04T10:38:57Z"
  },
  "comfort":[
    {
      "roomId":1,
      "temperatureLevel":"COMFY",
      "humidityLevel":"COMFY",
      "coordinate":{
        "radial":0.36,
        "angular":323
      }
    },
    {
      "roomId":4,
      "temperatureLevel":"COMFY",
      "humidityLevel":"COMFY",
      "coordinate":{
        "radial":0.43,
        "angular":324
      }
    }
  ]
}

get_air_comfort_geoloc(latitude, longitude)

Get all zones of your home.

Parameters:

Name Type Description Default
latitude float

The latitude of the home.

required
longitude float

The longitude of the home.

required

Returns:

Type Description
dict

A dict of lists of dictionaries with all your rooms.

Result example
{
  "roomMessages":[
    {
      "roomId":4,
      "message":"Bravo ! L’air de cette pièce est proche de la perfection.",
      "visual":"success",
      "link":null
    },
    {
      "roomId":1,
      "message":"Continuez à faire ce que vous faites ! L'air de cette pièce est parfait.",
      "visual":"success",
      "link":null
    }
  ],
  "outdoorQuality":{
    "aqi":{
      "value":81,
      "level":"EXCELLENT"
    },
    "pollens":{
      "dominant":{
        "level":"LOW"
      },
      "types":[
        {
          "localizedName":"Graminées",
          "type":"GRASS",
          "localizedDescription":"Poaceae",
          "forecast":[
            {
              "localizedDay":"Auj.",
              "date":"2020-09-06",
              "level":"NONE"
            },
            {
              "localizedDay":"Lun",
              "date":"2020-09-07",
              "level":"NONE"
            },
            {
              "localizedDay":"Mar",
              "date":"2020-09-08",
              "level":"NONE"
            }
          ]
        },
        {
          "localizedName":"Herbacées",
          "type":"WEED",
          "localizedDescription":"Armoise, Ambroisie, Pariétaire",
          "forecast":[
            {
              "localizedDay":"Auj.",
              "date":"2020-09-06",
              "level":"NONE"
            },
            {
              "localizedDay":"Lun",
              "date":"2020-09-07",
              "level":"NONE"
            },
            {
              "localizedDay":"Mar",
              "date":"2020-09-08",
              "level":"NONE"
            }
          ]
        },
        {
          "localizedName":"Arbres",
          "type":"TREE",
          "localizedDescription":"Aulne, Frêne, Bouleau, Noisetier, Cyprès, Olivier",
          "forecast":[
            {
              "localizedDay":"Auj.",
              "date":"2020-09-06",
              "level":"NONE"
            },
            {
              "localizedDay":"Lun",
              "date":"2020-09-07",
              "level":"NONE"
            },
            {
              "localizedDay":"Mar",
              "date":"2020-09-08",
              "level":"NONE"
            }
          ]
        }
      ]
    },
    "pollutants":[
      {
        "localizedName":"Matière particulaire",
        "scientificName":"PM<sub>10</sub>",
        "level":"EXCELLENT",
        "concentration":{
          "value":8.75,
          "units":"μg/m<sup>3</sup>"
        }
      },
      {
        "localizedName":"Matière particulaire",
        "scientificName":"PM<sub>2.5</sub>",
        "level":"EXCELLENT",
        "concentration":{
          "value":5.04,
          "units":"μg/m<sup>3</sup>"
        }
      },
      {
        "localizedName":"Ozone",
        "scientificName":"O<sub>3</sub>",
        "level":"EXCELLENT",
        "concentration":{
          "value":23.86,
          "units":"ppb"
        }
      },
      {
        "localizedName":"Dioxyde de soufre",
        "scientificName":"SO<sub>2</sub>",
        "level":"EXCELLENT",
        "concentration":{
          "value":1.19,
          "units":"ppb"
        }
      },
      {
        "localizedName":"Monoxyde de carbone",
        "scientificName":"CO",
        "level":"EXCELLENT",
        "concentration":{
          "value":266.8,
          "units":"ppb"
        }
      },
      {
        "localizedName":"Dioxyde d'azote",
        "scientificName":"NO<sub>2</sub>",
        "level":"EXCELLENT",
        "concentration":{
          "value":5.76,
          "units":"ppb"
        }
      }
    ]
  }
}

get_away_configuration(zone)

Get the away configuration for a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Name Type Description
type str

The type of the away configuration.

preheatingLevel str

The preheating level of the away configuration.

minimumAwayTemperature dict

The minimum away temperature of the away configuration.

Result example
{
  "type": "HEATING",
  "preheatingLevel": "COMFORT",
  "minimumAwayTemperature": {
    "celsius": 16.0,
    "fahrenheit": 60.8
  }
}

get_capabilities(zone)

Get the capabilities of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Name Type Description
temperatures dict

The temperature capabilities of the zone.

type str

The temperature type of the zone.

Result example
{
  "temperatures": {
    "celsius": {
      "max": 25,
      "min": 5,
      "step": 1.0
    },
    "fahrenheit": {
      "max": 77,
      "min": 41,
      "step": 1.0
    }
  },
  "type": "HEATING"
}

get_consumption_overview(monthYear, country, ngsw_bypass=True)

Get energy consumption overview of your home by month and year

Parameters:

Name Type Description Default
monthYear str

Month and year of the range date.

required
country str

Country code.

required
ngsw_bypass bool

Bypass the ngsw cache.

True

Returns:

Name Type Description
consumptionInputState str

Consumption input state

currency str

Currency

customTariff bool

Custom tariff

energySavingsReport dict

Energy savings report

monthlyAggregation dict

Monthly aggregation

tariffInfo dict

Tariffication information

unit str

Measurement unit

Result example
{
  "currency": "EUR",
  "tariff": "0.104 €/kWh",
  "tariffInfo": {
    "currencySign": "€",
    "consumptionUnit": "kWh",
    "tariffInCents": 10.36,
    "customTariff": false
  },
  "customTariff": false,
  "consumptionInputState": "full",
  "unit": "m3",
  "energySavingsReport": {
    "totalSavingsInPercent": 4.7,
    "yearMonth": "2023-09"
  },
  "monthlyAggregation": {
    "endOfMonthForecast": {
      "startDate": "2023-10-13",
      "endDate": "2023-10-31",
      "totalConsumption": 3.82,
      "totalCostInCents": 417.52,
      "consumptionPerDate": [
        {
          "date": "2023-10-14",
          "consumption": 0.2122222222222222,
          "costInCents": 23.2
        },
        [...] // 17 more days
        {
          "date": "2023-10-31",
          "consumption": 0.2122222222222222,
          "costInCents": 23.2
        }
      ]
    },
    "requestedMonth": {
      "startDate": "2023-10-01",
      "endDate": "2023-10-13",
      "totalConsumption": 1.5,
      "totalCostInCents": 163.95,
      "consumptionPerDate": [
        {
          "date": "2023-10-01",
          "consumption": 0,
          "costInCents": 0
        },
        [...] // 12 more days
        {
          "date": "2023-10-13",
          "consumption": 0,
          "costInCents": 0
        }
      ]
    },
    "monthBefore": {
      "startDate": "2023-09-01",
      "endDate": "2023-09-30",
      "totalConsumption": 1.2799999999999998,
      "totalCostInCents": 139.9,
      "consumptionPerDate": [
        {
          "date": "2023-09-01",
          "consumption": 0,
          "costInCents": 0
        },
        [...] // 29 more days
        {
          "date": "2023-09-30",
          "consumption": 0.36,
          "costInCents": 39.35
        }
      ]
    },
    "yearBefore": {
      "startDate": "2022-10-01",
      "endDate": "2022-10-31",
      "totalConsumption": 22.569999999999997,
      "totalCostInCents": 2466.86,
      "consumptionPerDate": [
        {
          "date": "2022-10-01",
          "consumption": 0.67,
          "costInCents": 73.23
        },
        [...] // 30 more days
        {
          "date": "2022-10-31",
          "consumption": 0.65,
          "costInCents": 71.04
        }
      ]
    }
  }
}

get_default_overlay(zone)

Get the default overlay settings of a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Name Type Description
terminationCondition dict

The termination condition of the overlay.

Result example
{
  "terminationCondition": {
    "type": "TADO_MODE"
  }
}

get_device_usage()

Get all devices of your home with how they are used.

Returns:

Name Type Description
entries list

All devices of home as list of dictionaries.

Result example
{
  "entries": [
    {
      "type": "RU01",
      "device": {
        "deviceType": "RU01",
        "serialNo": "RU3174041856",
        "shortSerialNo": "RU3174041856",
        "currentFwVersion": "54.20",
        "connectionState": {
          "value": true,
          "timestamp": "2024-01-01T23:57:43.265Z"
        },
        "characteristics": {
          "capabilities": [
            "INSIDE_TEMPERATURE_MEASUREMENT",
            "IDENTIFY"
          ]
        },
        "batteryState": "NORMAL"
      },
      "zone": {
        "discriminator": 1,
        "duties": [
          "UI"
        ]
      }
    },
    {
      "type": "VA01",
      "device": {
        "deviceType": "VA01",
        "serialNo": "VA4291823104",
        "shortSerialNo": "VA4291823104",
        "currentFwVersion": "54.20",
        "connectionState": {
          "value": true,
          "timestamp": "2024-01-02T00:08:51.296Z"
        },
        "characteristics": {
          "capabilities": [
            "INSIDE_TEMPERATURE_MEASUREMENT",
            "IDENTIFY"
          ]
        },
        "mountingState": {
          "value": "CALIBRATED",
          "timestamp": "2023-10-18T08:32:04.640Z"
        },
        "mountingStateWithError": "CALIBRATED",
        "batteryState": "NORMAL",
        "childLockEnabled": false
      },
      "zone": {
        "discriminator": 11
      }
    },
    {
      "type": "BU01",
      "device": {
        "deviceType": "BU01",
        "serialNo": "BU4274718464",
        "shortSerialNo": "BU4274718464",
        "currentFwVersion": "81.1",
        "connectionState": {
          "value": true,
          "timestamp": "2024-01-02T00:00:02.365Z"
        },
        "characteristics": {
          "capabilities": []
        },
        "isDriverConfigured": true
      }
    },
    {
      "type": "GW03",
      "device": {
        "deviceType": "GW03",
        "serialNo": "GW2754808064",
        "shortSerialNo": "GW2754808064",
        "currentFwVersion": "47.2",
        "connectionState": {
          "value": true,
          "timestamp": "2024-01-01T23:55:19.317Z"
        },
        "characteristics": {
          "capabilities": [
            "RADIO_ENCRYPTION_KEY_ACCESS"
          ]
        },
        "inPairingMode": false
      }
    }
  ]
}

get_devices()

Get all devices of your home.

Returns:

Type Description
list

All devices of the home as a list of dictionaries.

Result example
[
  {
    "characteristics": {
      "capabilities": []
    },
    "connectionState": {
      "timestamp": "2017-02-20T18:51:47.362Z",
      "value": True
    },
    "currentFwVersion": "25.15",
    "deviceType": "GW03",
    "gatewayOperation": "NORMAL",
    "serialNo": "SOME_SERIAL",
    "shortSerialNo": "SOME_SERIAL"
  },
  {
    "characteristics": {
      "capabilities": ["INSIDE_TEMPERATURE_MEASUREMENT", "IDENTIFY"]
    },
    "connectionState": {
      "timestamp": "2017-01-22T16:03:00.773Z",
      "value": False
    },
    "currentFwVersion": "36.15",
    "deviceType": "VA01",
    "mountingState": {
      "timestamp": "2017-01-22T15:12:45.360Z",
      "value": "UNMOUNTED"
    },
    "serialNo": "SOME_SERIAL",
    "shortSerialNo": "SOME_SERIAL"
  },
  {
    "characteristics": {
      "capabilities": ["INSIDE_TEMPERATURE_MEASUREMENT", "IDENTIFY"]
    },
    "connectionState": {
      "timestamp": "2017-02-20T18:33:49.092Z",
      "value": True
    },
    "currentFwVersion": "36.15",
    "deviceType": "VA01",
    "mountingState": {
      "timestamp": "2017-02-12T13:34:35.288Z",
      "value": "CALIBRATED"},
    "serialNo": "SOME_SERIAL",
    "shortSerialNo": "SOME_SERIAL"
  },
  {
    "characteristics": {
      "capabilities": ["INSIDE_TEMPERATURE_MEASUREMENT", "IDENTIFY"]
    },
    "connectionState": {
      "timestamp": "2017-02-20T18:51:28.779Z",
      "value": True
    },
    "currentFwVersion": "36.15",
    "deviceType": "VA01",
    "mountingState": {
      "timestamp": "2017-01-12T13:22:11.618Z",
      "value": "CALIBRATED"
    },
    "serialNo": "SOME_SERIAL",
    "shortSerialNo": "SOME_SERIAL"
  }
]

get_early_start(zone)

Get the early start configuration of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Name Type Description
enabled bool

Whether early start is enabled or not.

Result example
{
  "enabled": True
}

get_energy_consumption(startDate, endDate, country, ngsw_bypass=True)

Get enery consumption of your home by range date

Parameters:

Name Type Description Default
startDate str

Start date of the range date.

required
endDate str

End date of the range date.

required
country str

Country code.

required
ngsw_bypass bool

Bypass the ngsw cache.

True

Returns:

Type Description
list

A dict of your energy consumption.

Result example
{
  "tariff": "0.104 €/kWh",
  "unit": "m3",
  "consumptionInputState": "full",
  "customTariff": false,
  "currency": "EUR",
  "tariffInfo":{
    "consumptionUnit": "kWh",
    "customTariff": false,
    "tariffInCents": 10.36,
    "currencySign": "€",
  "details":{
    "totalCostInCents": 1762.98,
    "totalConsumption": 16.13,
    "perDay": [
      {
        "date": "2022-09-01",
        "consumption": 0,
        "costInCents": 0
      },{
        "date": "2022-09-02",
        "consumption": 0,
        "costInCents": 0
      },{
        "date": "2022-09-03",
        "consumption": 0.04,
        "costInCents": 0.4144
      }
    ]
  }
}

get_energy_insights(start_date, end_date, country, ngsw_bypass=True)

Get energy insights of your home

Parameters:

Name Type Description Default
start_date str

Start date of the range date.

required
end_date str

End date of the range date.

required
country str

Country code.

required
ngsw_bypass bool

Bypass the ngsw cache.

True

Returns:

Name Type Description
consumptionComparison dict

Consumption comparison

costForecast dict

Cost forecast

weatherComparison dict

Weather comparison

heatingTimeComparison dict

Heating time comparison

awayTimeComparison dict

Away time comparison

heatingHotwaterComparison dict

Heating hotwater comparison

Result example
{
  "consumptionComparison": {
    "currentMonth": {
    "consumed": {
      "energy": [
        {
          "toEndOfRange": 1.5,
          "unit": "m3",
          "perZone": [
            {
              "zone": 1,
              "toEndOfRange": 0.6025913295286759
            }
          ]
        },
        {
          "toEndOfRange": 15.83,
          "unit": "kWh",
          "perZone": [
            {
              "zone": 1,
              "toEndOfRange": 6.36
            }
          ]
        }
      ]
    },
    "dateRange": {
      "start": "2023-10-01",
      "end": "2023-10-13"
    }
    },
    "comparedTo": {
      "consumed": {
        "energy": [
          {
            "toEndOfRange": 16.9,
            "unit": "m3",
            "perZone": [
            {
              "zone": 1,
              "toEndOfRange": 6.098444101091741
            }
            ]
          },
          {
            "toEndOfRange": 178.3,
            "unit": "kWh",
            "perZone": [
            {
              "zone": 1,
              "toEndOfRange": 64.34
            }
            ]
          }
        ]
      },
      "dateRange": {
        "start": "2022-10-01",
        "end": "2022-10-13"
      }
      }
  },
  "costForecast": {
    "costEndOfMonthInCents": 417.5
  },
  "weatherComparison": {
    "currentMonth": {
      "averageTemperature": 17.2,
      "dateRange": {
        "start": "2023-10-01",
        "end": "2023-10-13"
      }
    },
    "comparedTo": {
      "averageTemperature": 12.7,
      "dateRange": {
        "start": "2022-10-01",
        "end": "2022-10-13"
      }
    }
  },
  "heatingTimeComparison": {
    "currentMonth": {
      "heatingTimeHours": 13,
      "dateRange": {
        "start": "2023-10-01",
        "end": "2023-10-14"
      }
    },
    "comparedTo": {
      "heatingTimeHours": 155,
      "dateRange": {
        "start": "2022-10-01",
        "end": "2022-10-14"
      }
    }
  },
  "awayTimeComparison": {
    "currentMonth": {
      "awayTimeInHours": 39,
      "dateRange": {
        "start": "2023-10-01",
        "end": "2023-10-13"
      }
    },
    "comparedTo": {
      "awayTimeInHours": 74,
      "dateRange": {
        "start": "2022-10-01",
        "end": "2022-10-13"
      }
    }
  },
  "heatingHotwaterComparison": null
}

get_energy_savings(monthYear, country, ngsw_bypass=True)

Get energy savings of your home by month and year

Parameters:

Name Type Description Default
monthYear str

Month and year of the range date.

required
country str

Country code.

required
ngsw_bypass bool

Bypass the ngsw cache.

True

Returns:

Type Description
list

A dict of your energy savings.

Result example
{
  "coveredInterval":{
    "start":"2022-08-31T23:48:02.675000Z",
    "end":"2022-09-29T13:10:23.035000Z"
  },
  "totalSavingsAvailable":true,
  "withAutoAssist":{
    "detectedAwayDuration":{
      "value":56,
      "unit":"HOURS"
    },
    "openWindowDetectionTimes":9
  },
  "totalSavingsInThermostaticMode":{
    "value":0,
    "unit":"HOURS"
  },
  "manualControlSaving":{
    "value":0,
    "unit":"PERCENTAGE"
  },
  "totalSavings":{
    "value":6.5,
    "unit":"PERCENTAGE"
  },
  "hideSunshineDuration":false,
  "awayDuration":{
    "value":56,
    "unit":"HOURS"
  },
  "showSavingsInThermostaticMode":false,
  "communityNews":{
    "type":"HOME_COMFORT_STATES",
    "states":[
      {
        "name":"humid",
        "value":47.3,
        "unit":"PERCENTAGE"
      },
      {
        "name":"ideal",
        "value":43.1,
        "unit":"PERCENTAGE"
      },
      {
        "name":"cold",
        "value":9.5,
        "unit":"PERCENTAGE"
      },
      {
        "name":"warm",
        "value":0.1,
        "unit":"PERCENTAGE"
      },
      {
        "name":"dry",
        "value":0,
        "unit":"PERCENTAGE"
      }
    ]
  },
  "sunshineDuration":{
    "value":112,
    "unit":"HOURS"
  },
  "hasAutoAssist":true,
  "openWindowDetectionTimes":5,
  "setbackScheduleDurationPerDay":{
    "value":9.100000381469727,
    "unit":"HOURS"
  },
  "totalSavingsInThermostaticModeAvailable":false,
  "yearMonth":"2022-09",
  "hideOpenWindowDetection":false,
  "home":123456,
  "hideCommunityNews":false
}

get_enery_settings(ngsw_bypass=True)

Get energy settings of your home

Parameters:

Name Type Description Default
ngsw_bypass bool

Bypass the ngsw cache.

True

Returns:

Name Type Description
homeId int

Home ID

dataSource str

Data source

consumptionUnit str

Consumption unit

preferredEnergyUnit str

Preferred energy unit

showReadingsBanner bool

Show readings banner

Result example
{
  "homeId": 123456,
  "dataSource": "meterReadings",
  "consumptionUnit": "m3",
  "preferredEnergyUnit": "m3",
  "showReadingsBanner": false
}

get_heating_circuits()

Gets the heating circuits in the current home

Returns:

Type Description
list

List of all dictionaries for all heating circuits.

Result example
[
  {
    "number": 1,
    "driverSerialNo": "BU4274718464",
    "driverShortSerialNo": "BU4274718464"
  }
]

get_heating_system()

Get all heating systems of your home.

Returns:

Type Description
list

A dict of your heating systems.

Result example
{
  "boiler":{
    "present": true,
    "id": 17830,
    "found": true
  },
  "underfloorHeating":{
    "present": false
  }
}

get_home()

Get information about the home.

Returns:

Name Type Description
id int

The ID of your home.

address dict

The address of your home.

contactDetails dict

The contact details of your home.

dateTimeZone str

The timezone of your home.

geolocation dict

The geolocation of your home.

installationCompleted bool

Whether the installation is completed or not.

name str

The name of your home.

partner dict

The partner of your home.

simpleSmartScheduleEnabled bool

Whether simple smart schedule is enabled or not.

temperatureUnit str

The temperature unit of your home.

Result example
{
  "address": {
    "addressLine1": "SOME_STREET",
    "addressLine2": None,
    "city": "SOME_CITY",
    "country": "SOME_COUNTRY",
    "state": None,
    "zipCode": "SOME_ZIP_CODE"
  },
  "contactDetails": {
    "email": "SOME_EMAIL",
    "name": "SOME_NAME",
    "phone": "SOME_PHONE"
  },
  "dateTimeZone": "Europe/Berlin",
  "geolocation": {
    "latitude": SOME_LAT,
    "longitude": SOME_LONG
  },
  "id": SOME_ID,
  "installationCompleted": True,
  "name": "SOME_NAME",
  "partner": None,
  "simpleSmartScheduleEnabled": True,
  "temperatureUnit": "CELSIUS"
}

get_home_state()

Get information about the status of the home.

Returns:

Name Type Description
presence str

The presence of the home.

presenceLocked bool

Whether the presence is locked or not.

Result example
{
  "presence": "HOME",
  "presenceLocked": false
}

get_incidents()

Gets the ongoing incidents in the current home

Returns:

Name Type Description
incidents list

List of all current incidents.

Result example
{
  "incidents": []
}

get_installations()

Gets the ongoing installations in the current home

Returns:

Type Description
list

List of all current installations

Result example
[]

get_invitations()

Get active invitations.

Returns:

Type Description
list

A list of active invitations to your home.

Result example
[
  {
    "email": "SOME_INVITED_EMAIL",
    "firstSent": "2017-02-20T21:01:44.450Z",
    "home": {
      "address": {
        "addressLine1": "SOME_STREET",
        "addressLine2": None,
        "city": "SOME_CITY",
        "country": "SOME_COUNTRY",
        "state": None,
        "zipCode": "SOME_ZIP_CODE"
      },
      "contactDetails": {
        "email": "SOME_EMAIL",
        "name": "SOME_NAME",
        "phone": "SOME_PHONE"
      },
      "dateTimeZone": "Europe/Berlin",
      "geolocation": {
        "latitude": SOME_LAT,
        "longitude": SOME_LONG
      },
      "id": SOME_ID,
      "installationCompleted": True,
      "name": "SOME_NAME",
      "partner": None,
      "simpleSmartScheduleEnabled": True,
      "temperatureUnit": "CELSIUS"
    },
    "inviter": {
      "email": "SOME_INVITER_EMAIL",
      "enabled": True,
      "homeId": SOME_ID,
      "locale": "SOME_LOCALE",
      "name": "SOME_NAME",
      "type": "WEB_USER",
      "username": "SOME_USERNAME"
    },
    "lastSent": "2017-02-20T21:01:44.450Z",
    "token": "SOME_TOKEN"
  }
]

get_me()

Get information about the current user.

Returns:

Type Description
dict

A dictionary with information about the current user.

Result example
{
  "email": "SOME_EMAIL",
  "homes": [
    {
      "id": SOME_ID,
      "name": "SOME_NAME"
    }
  ],
  "locale": "en_US",
  "mobileDevices": [],
  "name": "SOME_NAME",
  "username": "SOME_USERNAME",
  "secret": "SOME_CLIENT_SECRET"
}

get_measuring_device(zone)

Gets the active measuring device of a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Type Description
dict

A dictionary with the current measuring informations.

get_mobile_devices()

Get all mobile devices.

Returns:

Type Description
list

List of dictionaries with information about the mobile devices.

Result example
[
  {
    "name": "Germain",
    "id": 1234567,
    "settings": {
      "geoTrackingEnabled": true,
      "specialOffersEnabled": true,
      "onDemandLogRetrievalEnabled": true,
      "pushNotifications": {
        "lowBatteryReminder": true,
        "awayModeReminder": true,
        "homeModeReminder": true,
        "openWindowReminder": true,
        "energySavingsReportReminder": true,
        "incidentDetection": true,
        "energyIqReminder": false
      }
    },
    "location": {
      "stale": false,
      "atHome": true,
      "bearingFromHome": {
        "degrees": 123.45611789012345,
        "radians": 1.2345678901234567
      },
      "relativeDistanceFromHomeFence": 0.0
    },
    "deviceMetadata": {
      "platform": "iOS",
      "osVersion": "17.1.2",
      "model": "iPhone11,2",
      "locale": "fr"
    }
  }
]

get_report(zone, date)

Get the report for a zone on a specific date.

Parameters:

Name Type Description Default
zone int

The zone ID.

required
date str

The date in ISO8601 format. e.g. "2019-02-14".

required

Returns:

Type Description
dict

The daily report.

Result example
{
  "zoneType": "HEATING",
  "interval": {
    "from": "2023-12-11T22:45:00.000Z",
    "to": "2023-12-12T23:15:00.000Z"
  },
  "hoursInDay": 24,
  "measuredData": {
    "measuringDeviceConnected": {
      "timeSeriesType": "dataIntervals",
      "valueType": "boolean",
      "dataIntervals": [
        {
          "from": "2023-12-11T22:45:00.000Z",
          "to": "2023-12-12T23:15:00.000Z",
          "value": true
        }
      ]
    },
    "insideTemperature": {
      "timeSeriesType": "dataPoints",
      "valueType": "temperature",
      "min": {
        "celsius": 18.12,
        "fahrenheit": 64.62
      },
      "max": {
        "celsius": 19.67,
        "fahrenheit": 67.41
      },
      "dataPoints": [
        {
          "timestamp": "2023-12-11T22:45:00.000Z",
          "value": {
            "celsius": 19.59,
            "fahrenheit": 67.26
          }
        },
        [...]
      ]
    },
    "humidity": {
      "timeSeriesType": "dataPoints",
      "valueType": "percentage",
      "percentageUnit": "UNIT_INTERVAL",
      "min": 0.549,
      "max": 0.605,
      "dataPoints": [
        {
          "timestamp": "2023-12-11T22:45:00.000Z",
          "value": 0.567
        },
        [...]
      ]
    }
  },
  "stripes": {
    "timeSeriesType": "dataIntervals",
    "valueType": "stripes",
    "dataIntervals": [
      {
        "from": "2023-12-12T05:00:00.000Z",
        "to": "2023-12-12T07:43:23.594Z",
        "value": {
          "stripeType": "HOME",
          "setting": {
            "type": "HEATING",
            "power": "ON",
            "temperature": {
              "celsius": 19.0,
              "fahrenheit": 66.2
            }
          }
        }
      },
      [...]
    ]
  },
  "settings": {
    "timeSeriesType": "dataIntervals",
    "valueType": "heatingSetting",
    "dataIntervals": [
      {
        "from": "2023-12-11T22:45:00.000Z",
        "to": "2023-12-11T23:00:00.000Z",
        "value": {
          "type": "HEATING",
          "power": "ON",
          "temperature": {
            "celsius": 18.0,
            "fahrenheit": 64.4
          }
        }
      },
      [...]
    ]
  },
  "callForHeat": {
    "timeSeriesType": "dataIntervals",
    "valueType": "callForHeat",
    "dataIntervals": [
      {
        "from": "2023-12-11T22:45:00.000Z",
        "to": "2023-12-12T13:59:08.402Z",
        "value": "NONE"
      },
      [...]
    ]
  },
  "weather": {
    "condition": {
      "timeSeriesType": "dataIntervals",
      "valueType": "weatherCondition",
      "dataIntervals": [
        {
          "from": "2023-12-11T22:45:00.000Z",
          "to": "2023-12-11T22:45:42.875Z",
          "value": {
            "state": "NIGHT_CLOUDY",
            "temperature": {
              "celsius": 8.79,
              "fahrenheit": 47.82
            }
          }
        },
        [...]
      ]
    },
    "sunny": {
      "timeSeriesType": "dataIntervals",
      "valueType": "boolean",
      "dataIntervals": [
        {
          "from": "2023-12-11T22:45:00.000Z",
          "to": "2023-12-12T23:15:00.000Z",
          "value": false
        }
      ]
    },
    "slots": {
      "timeSeriesType": "slots",
      "valueType": "weatherCondition",
      "slots": {
        "04:00": {
          "state": "NIGHT_CLOUDY",
          "temperature": {
            "celsius": 8.12,
            "fahrenheit": 46.62
          }
        },
        [...]
      }
    }
  }
}

get_running_times(from_date)

Get all running times of your home.

Parameters:

Name Type Description Default
from_date str

The date in ISO8601 format. e.g. "2019-02-14".

required

Returns:

Type Description
list

A dict of your running times.

Result example
{
  "runningTimes":[
    {
      "runningTimeInSeconds":0,
      "startTime":"2022-08-18 00:00:00",
      "endTime":"2022-08-19 00:00:00",
      "zones":[
        {
          "id":1,
          "runningTimeInSeconds":0
        },
        {
          "id":6,
          "runningTimeInSeconds":0
        },
        {
          "id":11,
          "runningTimeInSeconds":0
        },
        {
          "id":12,
          "runningTimeInSeconds":0
        }
      ]
    }
  ],
  "summary":{
    "startTime":"2022-08-18 00:00:00",
    "endTime":"2022-08-19 00:00:00",
    "totalRunningTimeInSeconds":0
  },
  "lastUpdated":"2022-08-18T05:07:44Z"
}

get_schedule(zone)

Get the type of the currently configured schedule of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Type Description
dict

A dictionary with the ID and type of the schedule of the zone.

Tado allows three different types of a schedule for a zone:

  • The same schedule for all seven days of a week.
  • One schedule for weekdays, one for saturday and one for sunday.
  • Seven different schedules - one for every day of the week.
Result example
{
  "id": 1,
  "type": "THREE_DAY"
}

get_schedule_block_by_day_type(zone, schedule, day_type)

Gets the blocks for the current schedule on a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
schedule int

The schedule ID to fetch.

required
day_type str

The day_type to fetch. e.g. MONDAY_TO_FRIDAY, "MONDAY", "TUESDAY" etc

required

Returns:

Type Description
list

The blocks for the requested day type schedule.

Result example
[
  {
    "dayType": "MONDAY_TO_FRIDAY",
    "start": "00:00",
    "end": "06:30",
    "geolocationOverride": false,
    "setting": {
      "type": "HEATING",
      "power": "ON",
      "temperature": {
        "celsius": 21.2,
        "fahrenheit": 70.16
      }
    }
  },
  [...]
]

get_schedule_blocks(zone, schedule)

Gets the blocks for the current schedule on a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
schedule int

The schedule ID to fetch.

required

Returns:

Type Description
list

The blocks for the requested schedule.

Result example
[
  {
    "dayType": "MONDAY_TO_FRIDAY",
    "start": "00:00",
    "end": "06:30",
    "geolocationOverride": false,
    "setting": {
      "type": "HEATING",
      "power": "ON",
      "temperature": {
        "celsius": 21.2,
        "fahrenheit": 70.16
      }
    }
  },
  {
    "dayType": "MONDAY_TO_FRIDAY",
    "start": "06:30",
    "end": "00:00",
    "geolocationOverride": false,
    "setting": {
      "type": "HEATING",
      "power": "ON",
      "temperature": {
        "celsius": 21.0,
        "fahrenheit": 69.8
      }
    }
  },
  {
    "dayType": "SATURDAY",
    "start": "00:00",
    "end": "08:00",
    "geolocationOverride": false,
    "setting": {
      "type": "HEATING",
      "power": "ON",
      "temperature": {
        "celsius": 21.0,
        "fahrenheit": 69.8
      }
    }
  },

  [...]

  {
    "dayType": "SUNDAY",
    "start": "08:00",
    "end": "00:00",
    "geolocationOverride": false,
    "setting": {
      "type": "HEATING",
      "power": "ON",
      "temperature": {
        "celsius": 21.0,
        "fahrenheit": 69.8
      }
    }
  }
]

get_schedule_timetables(zone)

Gets the schedule timetables supported by the zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Type Description
list

List of schedule types.

Result example
[
  {
    "id": 0,
    "type": "ONE_DAY"
  },
  {
    "id": 1,
    "type": "THREE_DAY"
  },
  {
    "id": 2,
    "type": "SEVEN_DAY"
  }
]

get_state(zone)

Get the current state of a zone including its desired and current temperature. Check out the example output for more.

Parameters:

Name Type Description Default
zone int

The zone ID.

required

Returns:

Type Description
dict

A dictionary with the current settings and sensor measurements of the zone.

Result example
{
  "activityDataPoints": {
    "heatingPower": {
      "percentage": 0.0,
      "timestamp": "2017-02-21T11:56:52.204Z",
      "type": "PERCENTAGE"
    }
  },
  "geolocationOverride": False,
  "geolocationOverrideDisableTime": None,
  "link": {
    "state": "ONLINE"
  },
  "overlay": None,
  "overlayType": None,
  "preparation": None,
  "sensorDataPoints": {
    "humidity": {
      "percentage": 44.0,
      "timestamp": "2017-02-21T11:56:45.369Z",
      "type": "PERCENTAGE"
    },
    "insideTemperature": {
      "celsius": 18.11,
      "fahrenheit": 64.6,
      "precision": {
        "celsius": 1.0,
        "fahrenheit": 1.0
      },
      "timestamp": "2017-02-21T11:56:45.369Z",
      "type": "TEMPERATURE"
    }
  },
  "setting": {
    "power": "ON",
    "temperature": {
      "celsius": 20.0,
      "fahrenheit": 68.0
    },
    "type": "HEATING"
  },
  "tadoMode": "HOME"
}

get_temperature_offset(device_serial)

Gets the temperature offset of a device

Parameters:

Name Type Description Default
device_serial str

The serial number of the device.

required

Returns:

Type Description
dict

A dictionary that returns the offset in 'celsius' and 'fahrenheit'.

Result example
{
  "celsius": 0.0,
  "fahrenheit": 0.0
}

get_users()

Get all users of your home.

Returns:

Type Description
list

A list of dictionaries with all your users.

Result example
[
  {
    "name": "Germain",
    "email": "an_email@adress.com",
    "username": "an_email@adress.com",
    "id": "5c1234b1d0123456789dba1a",
    "homes": [
      {
        "id": 1234567,
        "name": "Domicile"
      }
    ],
    "locale": "fr",
    "mobileDevices": [
      {
        "name": "Germain",
        "id": 1234567,
        "settings": {
          "geoTrackingEnabled": true,
          "specialOffersEnabled": true,
          "onDemandLogRetrievalEnabled": true,
          "pushNotifications": {
            "lowBatteryReminder": true,
            "awayModeReminder": true,
            "homeModeReminder": true,
            "openWindowReminder": true,
            "energySavingsReportReminder": true,
            "incidentDetection": true,
            "energyIqReminder": false
          }
        },
        "location": {
          "stale": false,
          "atHome": true,
          "bearingFromHome": {
            "degrees": 0.0,
            "radians": 0.0
          },
          "relativeDistanceFromHomeFence": 0.0
        },
        "deviceMetadata": {
          "platform": "iOS",
          "osVersion": "17.1.2",
          "model": "iPhone11,2",
          "locale": "fr"
        }
      }
    ]
  }
]

get_weather()

Get the current weather of the location of your home.

Returns:

Type Description
dict

A dictionary with weather information for your home.

Result example
{
  "outsideTemperature": {
    "celsius": 8.49,
    "fahrenheit": 47.28,
    "precision": {
      "celsius": 0.01,
      "fahrenheit": 0.01
    },
    "timestamp": "2017-02-21T12:06:11.296Z",
    "type": "TEMPERATURE"
  },
  "solarIntensity": {
    "percentage": 58.4,
    "timestamp": "2017-02-21T12:06:11.296Z",
    "type": "PERCENTAGE"
  },
  "weatherState": {
    "timestamp": "2017-02-21T12:06:11.296Z",
    "type": "WEATHER_STATE",
    "value": "CLOUDY_PARTLY"
  }
}

get_zone_states()

Get all zone states of your home.

Returns:

Type Description
list

A dict of your zone states.

Result example
{
  "zoneStates":{
    "1":{
      "tadoMode":"HOME",
      "geolocationOverride":false,
      "geolocationOverrideDisableTime":"None",
      "preparation":"None",
      "setting":{
        "type":"HEATING",
        "power":"ON",
        "temperature":{
          "celsius":19.0,
          "fahrenheit":66.2
        }
      },
      "overlayType":"None",
      "overlay":"None",
      "openWindow":"None",
      "nextScheduleChange":{
        "start":"2022-08-18T16:00:00Z",
        "setting":{
          "type":"HEATING",
          "power":"ON",
          "temperature":{
            "celsius":20.0,
            "fahrenheit":68.0
          }
        }
      },
      "nextTimeBlock":{
        "start":"2022-08-18T16:00:00.000Z"
      },
      "link":{
        "state":"ONLINE"
      },
      "activityDataPoints":{
        "heatingPower":{
          "type":"PERCENTAGE",
          "percentage":0.0,
          "timestamp":"2022-08-18T05:34:32.127Z"
        }
      },
      "sensorDataPoints":{
        "insideTemperature":{
          "celsius":24.13,
          "fahrenheit":75.43,
          "timestamp":"2022-08-18T05:36:21.241Z",
          "type":"TEMPERATURE",
          "precision":{
            "celsius":0.1,
            "fahrenheit":0.1
          }
        },
        "humidity":{
          "type":"PERCENTAGE",
          "percentage":62.2,
          "timestamp":"2022-08-18T05:36:21.241Z"
        }
      }
    },
    "6":{
      "tadoMode":"HOME",
      "geolocationOverride":false,
      "geolocationOverrideDisableTime":"None",
      "preparation":"None",
      "setting":{
        "type":"HEATING",
        "power":"ON",
        "temperature":{
          "celsius":19.5,
          "fahrenheit":67.1
        }
      },
      "overlayType":"None",
      "overlay":"None",
      "openWindow":"None",
      "nextScheduleChange":{
        "start":"2022-08-18T07:00:00Z",
        "setting":{
          "type":"HEATING",
          "power":"ON",
          "temperature":{
            "celsius":18.0,
            "fahrenheit":64.4
          }
        }
      },
      "nextTimeBlock":{
        "start":"2022-08-18T07:00:00.000Z"
      },
      "link":{
        "state":"ONLINE"
      },
      "activityDataPoints":{
        "heatingPower":{
          "type":"PERCENTAGE",
          "percentage":0.0,
          "timestamp":"2022-08-18T05:47:58.505Z"
        }
      },
      "sensorDataPoints":{
        "insideTemperature":{
          "celsius":24.2,
          "fahrenheit":75.56,
          "timestamp":"2022-08-18T05:46:09.620Z",
          "type":"TEMPERATURE",
          "precision":{
            "celsius":0.1,
            "fahrenheit":0.1
          }
        },
        "humidity":{
          "type":"PERCENTAGE",
          "percentage":64.8,
          "timestamp":"2022-08-18T05:46:09.620Z"
        }
      }
    }
  }
}

get_zones()

Get all zones of your home.

Returns:

Type Description
list

A list of dictionaries with all your zones.

Result example
[
  {
    "dateCreated": "2016-12-23T15:53:43.615Z",
    "dazzleEnabled": True,
    "deviceTypes": ["VA01"],
    "devices": [
      {
        "characteristics": {
          "capabilities": ["INSIDE_TEMPERATURE_MEASUREMENT", "IDENTIFY"]
        },
        "connectionState": {
          "timestamp": "2017-02-21T14:22:45.913Z",
          "value": True
        },
        "currentFwVersion": "36.15",
        "deviceType": "VA01",
        "duties": ["ZONE_UI", "ZONE_DRIVER", "ZONE_LEADER"],
        "mountingState": {
          "timestamp": "2017-02-12T13:34:35.288Z",
          "value": "CALIBRATED"
        },
        "serialNo": "SOME_SERIAL",
        "shortSerialNo": "SOME_SERIAL"
      }
    ],
    "id": 1,
    "name": "SOME_NAME",
    "reportAvailable": False,
    "supportsDazzle": True,
    "type": "HEATING"
  },
  {
    "dateCreated": "2016-12-23T16:16:11.390Z",
    "dazzleEnabled": True,
    "deviceTypes": ["VA01"],
    "devices": [
      {
        "characteristics": {
          "capabilities": ["INSIDE_TEMPERATURE_MEASUREMENT", "IDENTIFY"]
        },
        "connectionState": {
          "timestamp": "2017-02-21T14:19:40.215Z",
          "value": True
        },
        "currentFwVersion": "36.15",
        "deviceType": "VA01",
        "duties": ["ZONE_UI", "ZONE_DRIVER", "ZONE_LEADER"],
        "mountingState": {
          "timestamp": "2017-01-12T13:22:11.618Z",
          "value": "CALIBRATED"
        },
        "serialNo": "SOME_SERIAL",
        "shortSerialNo": "SOME_SERIAL"
      }
    ],
    "id": 3,
    "name": "SOME_NAME ",
    "reportAvailable": False,
    "supportsDazzle": True,
    "type": "HEATING"
  }
]

refresh_auth()

Refresh the access token.

Returns:

Type Description
dict

A dictionary with the new access token and its expiry time.

set_away_configuration(zone, equipment_type, preheating_level, minimumAwayTemperatureCelcius)

Set the away configuration for a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
equipment_type str

The change type. e.g. HEATING, HOT_WATER

required
preheating_level str

The preheating level. e.g. OFF, ECO, MEDIUM, CONFORT

required
minimumAwayTemperatureCelcius float

The minimum temperature in celsius.

required

set_cost_simulation(country, ngsw_bypass=True, payload=None)

Trigger Cost Simulation of your home

Parameters:

Name Type Description Default
country str

Country code.

required
ngsw_bypass bool

Bypass the ngsw cache.

True
payload dict

Payload for the request.

None

Payload

Name Type Description
payload dict

Payload for the request.

Payload example
{
  "temperatureDeltaPerZone": [
    {
      "zone": 1,
      "setTemperatureDelta": -1
    },
    {
      "zone": 6,
      "setTemperatureDelta": -1
    },
    {
      "zone": 11,
      "setTemperatureDelta": -1
    },
    {
      "zone": 12,
      "setTemperatureDelta": -1
    }
  ]
}

Returns:

Name Type Description
consumptionUnit str

Consumption unit

estimationPerZone list

List of cost estimation per zone

Result example
{
  "consumptionUnit": "m3",
  "estimationPerZone": [
    {
      "zone": 1,
      "consumption": -1.6066000000000038,
      "costInCents": -176
    },
    {
      "zone": 6,
      "consumption": -1.1184999999999974,
      "costInCents": -122
    },
    {
      "zone": 11,
      "consumption": -1.412700000000008,
      "costInCents": -154
    },
    {
      "zone": 12,
      "consumption": -1.6030000000000015,
      "costInCents": -175
    }
  ]
}

set_early_start(zone, enabled)

Enable or disable the early start feature of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required
enabled bool

Enable (True) or disable (False) the early start feature of the zone.

required

Returns:

Type Description
boolean

Whether the early start feature is enabled or not.

Result example
{
  "enabled": True
}

set_heating_system_boiler(payload)

Set heating system boiler status

Parameters:

Name Type Description Default
payload dict

The payload to send to the API.

required

Payload

Name Type Description
payload dict

Payload for the request.

Payload example
{
  "present":true,
  "found":true,
  "id":"17830"
}

Returns:

Type Description

No returned value.

set_home_state(at_home)

Set at-home/away state

Parameters:

Name Type Description Default
at_home bool

True for at HOME, false for AWAY.

required

set_incident_detection(enabled)

Set the incident detection for the home

Parameters:

Name Type Description Default
enabled bool

Enable or disable the incident detection.

required

Returns:

Type Description
None

None

Result example
None

set_invitation(email)

Send an invitation to a user.

Parameters:

Name Type Description Default
email str

The email of the user to invite.

required

Returns:

Type Description
dict

The invitation information.

Result example
{
    "token": "44483e1d07qf439&8b786fc0372ec315",
    "email": "SOME_EMAIL",
    "firstSent": "2024-03-19T12:54:38.591Z",
    "lastSent": "2024-03-19T12:54:38.591Z",
    "inviter": {
        "name": "SOME_NAME",
        "email": "SOME_EMAIL",
        "username": "SOME_MAIL",
        "enabled": true,
        "id": "5c22a9b6d5018000088dba4a",
        "homeId": 123456,
        "locale": "fr",
        "type": "WEB_USER"
    },
    "home": {
        "id": 123456,
        "name": "Domicile",
        "dateTimeZone": "Europe/Paris",
        "dateCreated": "2018-12-25T20:58:28.674Z",
        "temperatureUnit": "CELSIUS",
        "partner": null,
        "simpleSmartScheduleEnabled": true,
        "awayRadiusInMeters": 1999.68,
        "installationCompleted": true,
        "incidentDetection": {
            "supported": true,
            "enabled": true
        },
        "generation": "PRE_LINE_X",
        "zonesCount": 4,
        "skills": [
            "AUTO_ASSIST"
        ],
        "christmasModeEnabled": true,
        "showAutoAssistReminders": true,
        "contactDetails": {
            "name": "SOME_NAME",
            "email": "SOME_EMAIL",
            "phone": "SOME_PHONE_NUMBER"
        },
        "address": {
            "addressLine1": "SOME_POSTAL_ADDRESS",
            "addressLine2": null,
            "zipCode": "SOME_POSTCODE",
            "city": "SOME_CITY",
            "state": null,
            "country": "FRA"
        },
        "geolocation": {
            "latitude": 12.3456789,
            "longitude": 1.23456
        },
        "consentGrantSkippable": true,
        "enabledFeatures": [
            "CLIMATE_REPORT_AS_WEBVIEW",
            "EIQ_SETTINGS_AS_WEBVIEW",
            "ENERGY_IQ_V2_ONBOARDING",
            "HIDE_BOILER_REPAIR_SERVICE",
            "KEEP_WEBAPP_UPDATED",
            "OWD_SETTINGS_AS_WEBVIEW",
            "SMART_SCHEDULE_AS_WEBVIEW"
        ],
        "isAirComfortEligible": true,
        "isBalanceAcEligible": false,
        "isEnergyIqEligible": true,
        "isHeatSourceInstalled": false,
        "isBalanceHpEligible": false
    }
}

set_open_window_detection(zone, enabled, seconds)

Get the open window detection for a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
enabled bool

If open window detection is enabled.

required
seconds int

timeout in seconds.

required

set_schedule(zone, schedule)

Set the type of the currently configured schedule of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required
schedule int

The schedule to activate. The supported zones are currently * 0: ONE_DAY * 1: THREE_DAY * 2: SEVEN_DAY But the actual mapping should be retrieved via get_schedule_timetables.

required

Returns:

Type Description
dict

The new configuration.

set_schedule_block_by_day_type(zone, schedule, day_type, blocks)

Sets the block for the current schedule on a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
schedule int

The schedule ID.

required
day_type str

The day_type to fetch. e.g. MONDAY_TO_FRIDAY, "MONDAY", "TUESDAY" etc

required
blocks list

The new blocks.

required

Returns:

Type Description
list

The new configuration.

set_schedule_blocks(zone, schedule, blocks)

Sets the blocks for the current schedule on a zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
schedule int

The schedule ID.

required
blocks list

The new blocks.

required

Returns:

Type Description
list

The new configuration.

set_temperature(zone, temperature, termination='MANUAL')

Set the desired temperature of a zone.

Parameters:

Name Type Description Default
zone int

The zone ID.

required
temperature float

The desired temperature in celsius.

required
termination str / int

The termination mode for the zone.

'MANUAL'

Returns:

Type Description
dict

A dictionary with the new zone settings.

If you set a desired temperature less than 5 celsius it will turn of the zone!

The termination supports three different mode:

  • MANUAL: The zone will be set on the desired temperature until you change it manually.
  • AUTO: The zone will be set on the desired temperature until the next automatic change.
  • INTEGER: The zone will be set on the desired temperature for INTEGER seconds.
Result example
{
  "setting": {
    "power": "ON",
    "temperature": {
      "celsius": 12.0,
      "fahrenheit": 53.6
    },
    "type": "HEATING"
  },
  "termination": {
    "projectedExpiry": None,
    "type": "MANUAL"
  },
  "type": "MANUAL"
}

set_temperature_offset(device_serial, offset)

Sets the temperature offset of a device

Parameters:

Name Type Description Default
device_serial str

The serial number of the device.

required
offset float

the temperature offset to apply in celsius.

required

Returns:

Type Description
dict

A dictionary that returns the offset in 'celsius' and 'fahrenheit'.

set_zone_name(zone, new_name)

Sets the name of the zone

Parameters:

Name Type Description Default
zone int

The zone ID.

required
new_name str

The new name of the zone.

required

Returns:

Type Description
dict

A dictionary with the new name of the zone.

set_zone_order(payload, ngsw_bypass=True)

Set zone order

Parameters:

Name Type Description Default
ngsw_bypass bool

Bypass the ngsw cache.

True
payload dict

The payload to send to the API.

required

Payload

Name Type Description
payload list

Payload for the request.

Payload example
[
  {
    "id": 1
  },
  {
    "id": 6
  },
  {
    "id": 11
  },
  {
    "id": 12
  }
]