Changelog¶
[2.10.1] - 2026-02-26¶
Added¶
- Added endpoint
get_pump_speed()to heating circuit
[2.9.1] - 2026-02-20¶
Added¶
- Added endpoint
get_available_heating_curves()to heating circuit
Fixed¶
- Fixed all endpoints that used a static heating curve name mapping
[2.9.0] - 2026-02-17¶
Added¶
- Added endpoint
get_target_overheating()to heat pump (Issue #100) - Added endpoint
get_current_overheating()to heat pump (Issue #100) - Added endpoint
get_expansion_valve_position()to heat pump (Issue #100) - Added endpoint
get_circulation_return_temperature()to hot water tank (Issue #100) - Added endpoint
get_circulation_pump_state()to hot water tank (Issue #97) - Added endpoint
get_heating_curve_offset()to heating circuit (Issue #97) - Added endpoint
set_heating_curve_offset()to heating circuit (Issue #97) - Added endpoint
get_heating_curve_slope()to heating circuit (Issue #97) - Added endpoint
set_heating_curve_slope()to heating circuit (Issue #97) - Added endpoint
get_use_heating_curve()to heating circuit (Issue #97) - Added endpoint
set_use_heating_curve()to heating circuit (Issue #97) - Added endpoint
get_heating_curve()to heating circuit (Issue #97) - Added endpoint
set_heating_curve()to heating circuit (Issue #97) - Added endpoint
get_heating_curve_points()to heating circuit (Issue #97) - Added endpoint
set_heating_curve_points()to heating circuit (Issue #97) - Added extra attributes heating curve points to the heating curve (Issue #97)
[2.8.1] - 2026-01-28¶
Changed¶
- Added important information to the endpoint documentation: writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.
[2.8.0] - 2026-01-24¶
Added¶
- Added
get_away_start_date(),set_away_start_date(),get_away_end_date()andset_away_end_date()endpoints to heat circuit - Added
get_timezone()endpoint to system
[2.7.2] - 2026-01-23¶
Fixed¶
- Revert original
get_target_temperature()for the heat circuit and add the new API endpointget_selected_target_temperature()to the heat circuit
[2.7.1] - 2026-01-23¶
Fixed¶
- Fixed target temperature value: use the raw target temperature without the offset for this API endpoint
[2.7.0] - 2026-01-17¶
Added¶
- Added support for Python 3.14
- Added endpoints for switch valves
- Added endpoint
.has_compressor_failure()to the head pump - Added endpoint
.has_source_failure()to the head pump - Added endpoint
.has_source_actuator_failure()to the head pump - Added endpoint
.has_three_phase_failure()to the head pump - Added endpoint
.has_source_pressure_failure()to the head pump - Added endpoint
.has_vfd_failure()to the head pump - Added endpoint
get_fresh_water_module_pump_speed()to the head pump - Added endpoint
get_mixer_return_flow_temperature()to the heat circuit - Added
.filter_request()to get only endpoints that are valid
Changed¶
- Rename heat circuit endpoint
get_flow_temperature()toget_mixer_flow_temperature()
[2.6.0] - 2026-01-11¶
Added¶
- Added endpoints
get_priority_1_before_2()andset_priority_1_before_2()to the solar circuit
[2.5.2] - 2026-01-09¶
Added¶
- Added endpoint
get_substate()to the head pump - Added endpoint
get_source_pump_speed()to the head pump - Added endpoint
get_condenser_temperature()to the head pump - Added endpoint
get_vaporizer_temperature()to the head pump
Fixed¶
- Changed basic auth encoding to from “latin-1” to “utf-8”
[2.5.1] - 2026-01-06¶
Fixed¶
- Fixed invalid buffer tank operation mode
[2.5.0] - 2026-01-05¶
Added¶
- Added endpoints for buffer tanks
[2.4.0] - 2026-01-03¶
Added¶
- Added endpoints for solar circuits
[2.3.1] - 2025-10-18¶
Fixed¶
- API error when read an endpoint with zero positions:
"Reading variable: APPL.CtrlAppl.sParam.extHeatSource[%s].param.operatingMode failed (-1)
[2.3.0] - 2025-10-16¶
Added¶
- Added endpoint
get_hmi_info()to system - Added endpoint
get_cpu_usage()to system - Added endpoint
get_webview_cpu_usage()to system - Added endpoint
get_webserver_cpu_usage()to system - Added endpoint
get_control_cpu_usage()to system - Added endpoint
get_ram_usage()to system - Added endpoint
get_free_ram()to system
[2.2.0] - 2025-10-13¶
Added¶
- Added endpoint
get_heat_request()to the external heat sources - Added endpoint
get_operating_time()to the external heat sources - Added endpoint
get_max_runtime()to the external heat sources - Added endpoint
get_activation_counter()to the external heat sources - Added endpoint
get_operating_time()to the heat pump - Added endpoint
get_max_runtime()to the heat pump - Added endpoint
get_activation_counter()to the heat pump
[2.1.0] - 2025-10-11¶
Added¶
- Added endpoint
get_excess_powerating_mode()to the photovoltaics - Added endpoint
get_daily_energy()to the photovoltaics - Added endpoint
get_total_energy()to the photovoltaics - Added endpoint
get_operating_mode()to the external heat sources - Added endpoint
set_operating_mode()to the external heat sources - Added endpoint
get_target_temperature()to the external heat sources - Added endpoint
has_photovoltaics()to the system - Added endpoint
get_number_of_external_heat_sources()to the system - Added endpoint
get_cool_request()to the heat circuit - Added endpoint
get_flow_temperature()to the heat circuit - Added endpoint
get_return_flow_temperature()to the heat circuit - Added support for authentication (It’s required for newer KeEnergy.WebHmi versions)
- Added http status code to
APIError()exception
[2.0.0] - 2025-09-30¶
Added¶
- Added endpoint
has_passive_cooling()to detect if the heat pump support passive cooling - Added endpoint
get_compressor_use_night_speed()to get the compressor night speed state - Added endpoint
set_compressor_use_night_speed()to get the compressor night speed - Added endpoint
set_compressor_use_night_speed()to get the compressor night speed - Added endpoint
get_compressor_night_speed()to get the compressor night speed - Added endpoint
set_compressor_night_speed()to set the compressor night speed - Added endpoint
get_max_compressor_night_speed()to get the maximum compressor night speed - Added endpoint
get_min_compressor_night_speed()to get the minimum compressor night speed - Added endpoint
get_flow_temperature_setpoint()to get the calculated flow temperature setpoint - Added endpoint
get_hot_water_flow()to see if the fresh water module is activated and hot water flow - Added endpoint
get_fresh_water_module_temperature()to get the temperature from the fresh water module - Added missing humanreadable values for
HeatCircuitHeatRequest(),HeatCircuitOperatingMode(), andHeatPumpState()
Changed¶
- Changed many endpoint function names have been given more technically accurate names (breaking changes)
Fixed¶
- Added missing humanreadable value
room_offfor heat circuit heat request status4
[1.15.0] - 2025-09-14¶
Added¶
- Endpoints to read the energy management data from the API
[1.14.0] - 2025-08-27¶
Added¶
has_room_temperature()andhas_room_hummidity()endpoint for heat circuits
[1.13.0] - 2025-08-26¶
Added¶
- Room temperature, room humidity and dew point to heat circuit endpoint
[1.12.10] - 2025-08-19¶
Added¶
keba_keenergy_api/py.typedto support static type checking e.g. with mypy
[1.12.9] - 2024-12-21¶
Added¶
- Support for Python 3.13 (required for the Home Assistant 2024.12)
[1.12.8] - 2024-12-21¶
Changed¶
- Allow all aiohttp versions with 3.*
[1.12.7] - 2024-08-24¶
Changed¶
- Bump aiohttp to 3.10.0b1
[1.12.6] - 2024-03-27¶
Fixed¶
- Missing heat request state
OUTDOOR_TEMPERATURE_OFF
[1.12.5] - 2024-02-25¶
Changed¶
- Support Python 3.12
[1.12.4] - 2024-01-30¶
Changed¶
- Bump aiohttp to 3.9.4
[1.12.3] - 2023-12-08¶
Changed¶
- Bump aiohttp to 3.9.1
- Bump aioresponses to 0.7.6
[1.12.2] - 2023-11-19¶
Changed¶
- Rename
HeatCircuitOperatingMode.AWAYtoHeatCircuitOperatingMode.HOLIDAY
[1.12.1] - 2023-11-19¶
Changed¶
- Rename endpoint
get_offset_temperture()toget_temperture_offset()
[1.12.0] - 2023-11-18¶
Added¶
system.get_operation_mode()endpointsystem.set_operation_mode()endpointheat_pump.get_operation_mode()endpointheat_pump.set_operation_mode()endpointheat_circuit.get_external_cool_request()endpointheat_circuit.get_external_heat_request()endpoint
Changed¶
- Convert attributes keys to lower case
- Merge options and devices endpoint to system endpoint
- Rename
read_values()toread_data() - Rename
write_values()towrite_data() - Rename
heat_pump.get_status()toheat_pump.get_state()
[1.11.1] - 2023-10-25¶
Fixed¶
- Response keys from
read_values_grouped_by_section()
[1.11.0] - 2023-10-25¶
Added¶
heat_pump.get_heat_request()endpointheat_circuit.get_heat_request()endpointhot_water_tank.get_heat_request()endpoint
[1.10.1] - 2023-10-24¶
Changed¶
- Refactor
SystemPrefixenum variables
[1.10.0] - 2023-10-23¶
Added¶
- Heat pump state “inflow”
heat_circuit.set_holiday_temperature()endpoint
[1.9.0] - 2023-10-23¶
Added¶
- AWAY and PARTY to heat circuit operating mode
[1.8.1] - 2023-10-22¶
Added¶
APIError()exception when can’t convert value to human readable value
Changed¶
- Allow set operating mode in lower and uppercase
[1.8.0] - 2023-10-20¶
Added¶
read_values_grouped_by_section()endpointattributestoread_values()response
[1.7.0] - 2023-10-19¶
Added¶
hot_water_tank.get_lower_limit_temperature()endpointhot_water_tank.get_upper_limit_temperature()endpoint
[1.6.2] - 2023-10-18¶
Fixed¶
- Refactor
KebaKeEnergyAPI()class for better mocking with pytest
[1.6.1] - 2023-10-17¶
Fixed¶
InvalidJsonErrorClass no inherit fromAPIErrorClass
Added¶
[1.6.0] - 2023-10-14¶
heat_pump.get_name()to read the heat pump nameheat_circuit.get_name()to read the heat circuit namehuman_readableattribute toread_values()to get a human-readable name and not a number as response e.g. forhot_water_tank.get_operating_mode()
[1.5.0] - 2023-10-13¶
Added¶
get_system_info()to read all system information
[1.4.3] - 2023-10-13¶
Fixed¶
- Error when mixing endpoints with and without position
[1.4.2] - 2023-10-13¶
Added¶
- Get the device url with
client.device_url
[1.4.1] - 2023-10-11¶
Changed¶
- Downgrade aiohttp to version 3.8.5 (for home assistant compatibility)
[1.4.0] - 2023-10-11¶
Added¶
get_device_info()to read all device information e.g. serial number asdict
[1.3.0] - 2023-10-10¶
Added¶
get_number_of_hot_water_tanks()to read number of hot water tanksget_number_of_heat_pumps()to read number of heat pumpsget_number_of_heating_circuits()to read number of heating circuits- Automatic set of position numbers for
read_values()dependent on hardware
[1.2.0] - 2023-10-09¶
Added¶
read_values()to read multiple values with one http requestwrite_values()to write multiple values with one http request
[1.1.0] - 2023-10-08¶
Added¶
- Device information endpoint for e.g. serial number
- SSL support for aiohttp
[1.0.0] - 2023-10-07¶
Initial release