Skip to content

Releases: kritsel/tado-openapispec-v2

Release version v2.2024.12.28.0

28 Dec 11:38
Compare
Choose a tag to compare

All changes are relative to the previously released version.

Operation tagging (a.k.a. grouping) changes

These changes can have impact on API client code which is generated from the API definition.

  • POST /homes/{homeId}/overlay: moved from home control to zone control
  • DELETE /homes/{homeId}/overlay: moved from home control to zone control

Release version v2.2024.12.24.1

24 Dec 12:53
Compare
Choose a tag to compare

All changes are relative to the previously released version.

Schema model changes

  • Home: added possible value LINE_X to the documentation of Home.generation

Release version v2.2024.12.24.0

24 Dec 11:06
Compare
Choose a tag to compare

All changes are relative to the previously released version.

Schema model changes

  • Device: added enum value CALIBRATING to both Device.mountingState.value and Device.mountingStateWithError

Release version v2.2024.12.21.0

21 Dec 20:31
Compare
Choose a tag to compare

All changes are relative to the previously released version.

Schema model changes

  • ZoneState: added property link.reason

Release v2.2024.12.16.0

16 Dec 17:29
Compare
Choose a tag to compare

All changes are relative to the previous released version.

Schema model changes

  • WeatherState: added additional enum values (credits to clambin)

Release v2.2024.12.9.0

09 Dec 19:56
Compare
Choose a tag to compare

All changes are relative to the previous released version.

Schema model changes

  • MobileDeviceSettings.pushNotifications: new properties tariffHighPriceAlert and tariffLowPriceAlert

Release v2.2024.11.24.0

24 Nov 11:32
Compare
Choose a tag to compare

All changes are relative to the previous released version.

Note: status identifiers like 'new' and 'unchanged' does not apply to the API itself; it only applies to this specification of the API.

Schema model changes

  • WeatherState: added enum value SNOW

Paths covered

home

  • GET /homes: unchanged
  • GET /homes/{homeId}/airComfort: unchanged
  • PUT /homes/{homeId}/awayRadiusInMeters: unchanged
  • PUT /homes/{homeId}/details: unchanged
  • GET /homes/{homeId}/heatingSystem: unchanged
  • PUT /homes/{homeId}/heatingSystem/boiler: unchanged
  • PUT /homes/{homeId}/heatingSystem/underfloorHeating: unchanged
  • GET /homes/{homeId}/incidentDetection: unchanged
  • PUT /homes/{homeId}/incidentDetection: unchanged
  • GET /homes/{homeId}/weather: unchanged

home control

  • POST /homes/{homeId}/overlay: unchanged
  • DELETE /homes/{homeId}/overlay: unchanged
  • PUT /homes/{homeId}/presenceLock: unchanged
  • DELETE /homes/{homeId}/presenceLock: unchanged
  • GET /homes/{homeId}/state: unchanged

heating circuit (new section)

  • GET /homes/{homeId}/heatingCircuits: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit:unchanged

zone

  • GET /homes/{homeId}/zones: unchanged
  • POST /homes/{homeId}/zones: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/capabilities: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/dazzle: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/details unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/openWindowDetection unchanged
  • GET /homes/{homeId}/zones/{zoneId}/state: unchanged
  • GET /homes/{homeId}/zoneStates: unchanged

zone control

  • GET /homes/{homeId}/zones/{zoneId}/defaultOverlay: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/defaultOverlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • DELETE /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: unchanged

device

  • GET /devices/{deviceId}: unchanged
  • GET /devices/{deviceId}/temperatureOffset: unchanged
  • PUT /devices/{deviceId}/temperatureOffset: unchanged
  • GET /homes/{homeId}/devices: unchanged
  • POST /homes/{homeId}/identify: unchanged
  • GET /homes/{homeId}/deviceList: unchanged
  • GET /homes/{homeId}/installations: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/control: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit: unchanged
  • POST /homes/{homeId}/zones/{zoneId}/devices: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged

user

  • GET /me: unchanged
  • GET /users: unchanged

mobile device

  • GET /homes/{homeId}/mobileDevices: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • DELETE /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged
  • PUT /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged

report

  • GET /homes/{homeId}/zones/{zoneId}/dayReport: unchanged

Release v2.2024.11.10.0

10 Nov 12:03
Compare
Choose a tag to compare

All changes are relative to the previous released version.

Note: status identifiers like 'new' and 'unchanged' does not apply to the API itself; it only applies to this specification of the API.

Acknowledgements

Many thanks to Christophe Lambin for contributing these API spec improvements.

Schema model changes - affecting the API contract

  • ErrorResponse and ErrorResponse422 : fixed error related to incorrect error array definition
  • percentage property of PercentageDatapoint changed from integer to float

Schema model changes - schema component design changes not affecting the API contract

  • location property of MobileDevice modelled as a separate schema component
  • activityDataPoints and sensorDataPoints properties of ZoneState modelled as separate schema components
  • openWindow property of ZoneState modelled as a separate schema component
  • termination property of ZoneOverlay modelled as a separate schema component

Paths covered

home

  • GET /homes: unchanged
  • GET /homes/{homeId}/airComfort: unchanged
  • PUT /homes/{homeId}/awayRadiusInMeters: unchanged
  • PUT /homes/{homeId}/details: unchanged
  • GET /homes/{homeId}/heatingSystem: unchanged
  • PUT /homes/{homeId}/heatingSystem/boiler: unchanged
  • PUT /homes/{homeId}/heatingSystem/underfloorHeating: unchanged
  • GET /homes/{homeId}/incidentDetection: unchanged
  • PUT /homes/{homeId}/incidentDetection: unchanged
  • GET /homes/{homeId}/weather: unchanged

home control

  • POST /homes/{homeId}/overlay: unchanged
  • DELETE /homes/{homeId}/overlay: unchanged
  • PUT /homes/{homeId}/presenceLock: unchanged
  • DELETE /homes/{homeId}/presenceLock: new
  • GET /homes/{homeId}/state: unchanged

heating circuit (new section)

  • GET /homes/{homeId}/heatingCircuits: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit:unchanged

zone

  • GET /homes/{homeId}/zones: unchanged
  • POST /homes/{homeId}/zones: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/capabilities: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/dazzle: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/details unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/openWindowDetection unchanged
  • GET /homes/{homeId}/zones/{zoneId}/state: unchanged
  • GET /homes/{homeId}/zoneStates: unchanged

zone control

  • GET /homes/{homeId}/zones/{zoneId}/defaultOverlay: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/defaultOverlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • DELETE /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: unchanged

device

  • GET /devices/{deviceId}: unchanged
  • GET /devices/{deviceId}/temperatureOffset: unchanged
  • PUT /devices/{deviceId}/temperatureOffset: unchanged
  • GET /homes/{homeId}/devices: unchanged
  • POST /homes/{homeId}/identify: unchanged
  • GET /homes/{homeId}/deviceList: unchanged
  • GET /homes/{homeId}/installations: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/control: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit: unchanged
  • POST /homes/{homeId}/zones/{zoneId}/devices: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged

user

  • GET /me: unchanged
  • GET /users: unchanged

mobile device

  • GET /homes/{homeId}/mobileDevices: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • DELETE /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged
  • PUT /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged

report

  • GET /homes/{homeId}/zones/{zoneId}/dayReport: unchanged

Release v2.2024.09.20.0

20 Sep 17:35
Compare
Choose a tag to compare

All changes are relative to the previous released version.

Note: status identifiers like 'new' and 'unchanged' does not apply to the API itself; it only applies to this specification of the API.

General

Paths covered

home

  • GET /homes: added new property supportsFlowTemperatureOptimization
  • GET /homes/{homeId}/airComfort: unchanged
  • PUT /homes/{homeId}/awayRadiusInMeters: unchanged
  • PUT /homes/{homeId}/details: operationId change
  • GET /homes/{homeId}/heatingSystem: unchanged
  • PUT /homes/{homeId}/heatingSystem/boiler: operationId change
  • PUT /homes/{homeId}/heatingSystem/underfloorHeating: operationId change
  • GET /homes/{homeId}/incidentDetection: unchanged
  • PUT /homes/{homeId}/incidentDetection: operationId change
  • GET /homes/{homeId}/weather: unchanged

home control

  • POST /homes/{homeId}/overlay: operationId change
  • DELETE /homes/{homeId}/overlay: operationId change
  • PUT /homes/{homeId}/presenceLock: operationId change
  • GET /homes/{homeId}/state: unchanged

heating circuit (new section)

  • GET /homes/{homeId}/heatingCircuits: moved from the 'home' section
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit: moved from the 'device' section

zone

  • GET /homes/{homeId}/zones: unchanged
  • POST /homes/{homeId}/zones: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/capabilities: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/dazzle: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/details unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/openWindowDetection unchanged
  • GET /homes/{homeId}/zones/{zoneId}/state: unchanged
  • GET /homes/{homeId}/zoneStates: unchanged

zone control

  • GET /homes/{homeId}/zones/{zoneId}/defaultOverlay: operationId change
  • PUT /homes/{homeId}/zones/{zoneId}/defaultOverlay: operationId change
  • GET /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/earlyStart: operationId change
  • GET /homes/{homeId}/zones/{zoneId}/overlay: operationId change
  • PUT /homes/{homeId}/zones/{zoneId}/overlay: operationId change
  • DELETE /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: operationId change
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: operationId change
  • GET /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: operationId change
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: operationId change
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: operationId change

device

  • GET /devices/{deviceId}: new
  • GET /devices/{deviceId}/temperatureOffset: unchanged
  • PUT /devices/{deviceId}/temperatureOffset: operationId change
  • GET /homes/{homeId}/devices: unchanged
  • POST /homes/{homeId}/identify: unchanged
  • GET /homes/{homeId}/deviceList: unchanged
  • GET /homes/{homeId}/installations: new
  • GET /homes/{homeId}/zones/{zoneId}/control: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit: unchanged
  • POST /homes/{homeId}/zones/{zoneId}/devices: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/measuringDevice: operationId change

user

  • GET /me: unchanged
  • GET /users: unchanged

mobile device

  • GET /homes/{homeId}/mobileDevices: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • DELETE /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged
  • PUT /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: operationId change

report

  • GET /homes/{homeId}/zones/{zoneId}/dayReport: unchanged

Release v2024.08.25.0

25 Aug 15:12
Compare
Choose a tag to compare

All changes are relative to the previous released version.

Note: status identifiers like 'new' and 'unchanged' does not apply to the API itself; it only applies to this specification of the API.

General

Paths covered

user

  • GET /me: unchanged
  • GET /users: unchanged

mobile device

  • GET /homes/{homeId}/mobileDevices: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • DELETE /homes/{homeId}/mobileDevices/{mobileDeviceId}: unchanged
  • GET /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged
  • PUT /homes/{homeId}/mobileDevices/{mobileDeviceId}/settings: unchanged

home

  • GET /homes: unchanged
  • GET /homes/{homeId}/airComfort: unchanged
  • PUT /homes/{homeId}/awayRadiusInMeters: new
  • PUT /homes/{homeId}/details: unchanged
  • GET /homes/{homeId}/heatingCircuits: unchanged
  • GET /homes/{homeId}/heatingSystem: unchanged
  • PUT /homes/{homeId}/heatingSystem/boiler: changed operationId (putHeatingSystemBoiler -> putBoiler)
  • PUT /homes/{homeId}/heatingSystem/underfloorHeating: unchanged
  • GET /homes/{homeId}/incidentDetection: unchanged
  • PUT /homes/{homeId}/incidentDetection: changed response code 200 into 204, changed request schema component (InputDetection -> InputDetectionInput)
  • GET /homes/{homeId}/weather: unchanged

home control

  • POST /homes/{homeId}/overlay: fixed response schema error (was an array)
  • DELETE /homes/{homeId}/overlay: unchanged
  • PUT /homes/{homeId}/presenceLock: unchanged
  • GET /homes/{homeId}/state: unchanged

zone

  • GET /homes/{homeId}/zones: unchanged
  • POST /homes/{homeId}/zones: new
  • GET /homes/{homeId}/zones/{zoneId}/capabilities: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/dazzle: new
  • PUT /homes/{homeId}/zones/{zoneId}/details new
  • PUT /homes/{homeId}/zones/{zoneId}/openWindowDetection new
  • GET /homes/{homeId}/zones/{zoneId}/state: unchanged
  • GET /homes/{homeId}/zoneStates: unchanged

zone control

  • GET /homes/{homeId}/zones/{zoneId}/defaultOverlay: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/defaultOverlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/earlyStart: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • DELETE /homes/{homeId}/zones/{zoneId}/overlay: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/awayConfiguration: fixed response http status: 204 instead of 200
  • GET /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/activeTimetable: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks: unchanged
  • GET /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/schedule/timetables/{timetableTypeId}/blocks/{dayType}: unchanged

device

  • GET /devices/{deviceId}: new
  • GET /devices/{deviceId}/temperatureOffset: fixed response schema
  • PUT /devices/{deviceId}/temperatureOffset: unchanged
  • GET /homes/{homeId}/devices: unchanged
  • POST /homes/{homeId}/identify: unchanged
  • GET /homes/{homeId}/deviceList: unchanged
  • GET /homes/{homeId}/installations: new
  • GET /homes/{homeId}/zones/{zoneId}/control: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/control/heatingCircuit: new
  • POST /homes/{homeId}/zones/{zoneId}/devices: new
  • GET /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged
  • PUT /homes/{homeId}/zones/{zoneId}/measuringDevice: unchanged

report

  • GET /homes/{homeId}/zones/{zoneId}/dayReport: unchanged