Heat pump
Endpoint group client.heat_pump (HeatPumpEndpoints).
API Endpoints to send and retrieve the heat pump data.
Example
client = KebaKeEnergyAPI(
host="ap4400.local",
username="test",
password="test",
ssl=True,
skip_ssl_verification=True
)
await client.heat_pump.get_name()
get_name
async def get_name(position: int = 1) -> str
Get the heat pump name.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
str: Heat pump name
get_state
async def get_state(position: int = 1, *, human_readable: bool = True) -> int | str
Get the heat pump state.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: (0) STANDBY / (1) FLOW / (2) AUTO_HEAT / (3) DEFROST / (4) AUTO_COOL / (5) INFLOW / (6) PUMP_DOWN / (7) SHUTDOWN / (8) ERROR
get_substate
async def get_substate(position: int = 1, *, human_readable: bool = True) -> int | str
Get the heat pump substate.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: (0) NONE / (1) OIL_PREHEATING / (2, 3) PUMP_PRE_RUN / (4) RANDOM_DELAY / (5, 21, 22) PRESSURE_EQUALIZATION / (6) DEFROST_PRE_FLOW / (7) DEFROST_MONITORING / (8) SNOW_DETECTION / (9) FLUSHING / (10) DEFROST_INITIALIZATION / (11) PREHEAT_FLOW / (12) DEFROST / (13, 25) DRIP / (14) DEFROST_END / (15, 16) OPEN / (17) COMPRESSOR_POST_RUN / (18) PUMP_POST_RUN / (19) LUBRICATION_PULSE / (20, 26) REDUCED_SPEED / (23) COMPRESSOR_DELAY / (24) DEFROST_VENTING / (27) SWITCH_HEATING_COOLING / (28, 33) WAIT_FOR_COMPRESSOR / (29) COMPRESSOR_STOP / (30) BIVALENT_LOCK / (31) LOCKED / (32) RETURN_FLOW_OFF / (34) MIXER_OPEN / (35) ZONE_VALVE / (36) ELECTRIC_DEFROST / (37) COUNTERFLOW_VALVE
get_operating_mode
async def get_operating_mode(position: int = 1, *, human_readable: bool = True) -> int | str
Get the operating mode from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: (0) OFF / (1) ON / (2) BACKUP
set_operating_mode
async def set_operating_mode(mode: int | str, position: int = 1) -> None
Set the operating mode from the heat pump.
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.
Parameters
- mode
int | str: Set the mode as integer or string (human-readable) e.g. 0 or OFF - position
int(default:1): Position of the heat pump, starting at 1
get_compressor_use_night_speed
async def get_compressor_use_night_speed(
position: int = 1,
*,
human_readable: bool = True,
) -> int | str
Get the compressor use night speed state.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: (0) OFF / (1) ON
set_compressor_use_night_speed
async def set_compressor_use_night_speed(mode: int | str, position: int = 1) -> None
Set the compressor use night speed.
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.
Parameters
- mode
int | str: Set the mode as integer or string (human-readable) e.g. 0 or OFF - position
int(default:1): Position of the heat pump, starting at 1
get_compressor_night_speed
async def get_compressor_night_speed(position: int = 1, *, human_readable: bool = True) -> float
Get the compressor night speed.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Has no effect, kept for backwards compatibility
Returns
float: Compressor night speed as a fraction from 0 to 1 (1 = 100 %)
set_compressor_night_speed
async def set_compressor_night_speed(speed: float, position: int = 1) -> None
Set the compressor night speed.
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.
Parameters
- speed
float: Speed as a fraction from 0 to 1 (1 = 100 %), e.g.0.95 - position
int(default:1): Position of the heat pump, starting at 1
get_min_compressor_night_speed
async def get_min_compressor_night_speed(position: int = 1) -> float
Get the minimum compressor night speed.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Minimum compressor night speed as a fraction from 0 to 1 (1 = 100 %)
get_max_compressor_night_speed
async def get_max_compressor_night_speed(position: int = 1) -> float
Get the maximum compressor night speed.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Maximum compressor night speed as a fraction from 0 to 1 (1 = 100 %)
get_circulation_pump_speed
async def get_circulation_pump_speed(position: int = 1) -> float
Get the circulation pump speed.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Circulation pump speed as a fraction from 0 to 1 (1 = 100 %)
get_source_pump_speed
async def get_source_pump_speed(position: int = 1) -> float
Get the source pump speed.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Source pump speed as a fraction from 0 to 1 (1 = 100 %)
get_flow_temperature
async def get_flow_temperature(position: int = 1) -> float
Get the flow temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_return_flow_temperature
async def get_return_flow_temperature(position: int = 1) -> float
Get the return flow temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_source_input_temperature
async def get_source_input_temperature(position: int = 1) -> float
Get the source input temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_source_output_temperature
async def get_source_output_temperature(position: int = 1) -> float
Get the source output temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_compressor_input_temperature
async def get_compressor_input_temperature(position: int = 1) -> float
Get the compressor input temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_compressor_output_temperature
async def get_compressor_output_temperature(position: int = 1) -> float
Get the compressor output temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_compressor_speed
async def get_compressor_speed(position: int = 1) -> float
Get the compressor speed from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Compressor speed as a fraction from 0 to 1 (1 = 100 %)
get_condenser_temperature
async def get_condenser_temperature(position: int = 1) -> float
Get the condenser temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_vaporizer_temperature
async def get_vaporizer_temperature(position: int = 1) -> float
Get the vaporizer temperature from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_target_overheating
async def get_target_overheating(position: int = 1) -> float
Get the target overheating from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_current_overheating
async def get_current_overheating(position: int = 1) -> float
Get the current overheating from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Temperature in °C
get_expansion_valve_position
async def get_expansion_valve_position(position: int = 1) -> int
Get the expansion valve position from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Step position
get_high_pressure
async def get_high_pressure(position: int = 1) -> float
Get the high pressure from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: High pressure in bar
get_low_pressure
async def get_low_pressure(position: int = 1) -> float
Get the low pressure from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Low pressure in bar
get_heat_request
async def get_heat_request(position: int = 1, *, human_readable: bool = True) -> int | str
Get the heat request state from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
get_consuming_excess_energy
async def get_consuming_excess_energy(
position: int = 1,
*,
human_readable: bool = True,
) -> int | str
Get the consuming excess energy from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
get_excess_energy_operating_time
async def get_excess_energy_operating_time(position: int = 1) -> int
Get the excess energy operating time from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Operating time in seconds
get_excess_energy_max_runtime
async def get_excess_energy_max_runtime(position: int = 1) -> int
Get the excess energy maximum runtime from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Excess energy maximum runtime in seconds
get_excess_energy_activation_counter
async def get_excess_energy_activation_counter(position: int = 1) -> int
Get the activation counter from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Number of excess energy activation
get_compressor_power
async def get_compressor_power(position: int = 1) -> float
Get the compressor power from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Compressor power in W
get_heating_power
async def get_heating_power(position: int = 1) -> float
Get the heating power from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Heating power in W
get_hot_water_power
async def get_hot_water_power(position: int = 1) -> float
Get the hot water power from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Hot water power in W
get_cop
async def get_cop(position: int = 1) -> float
Get the COP from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: COP
get_heating_energy
async def get_heating_energy(position: int = 1) -> float
Get the heating energy from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Heating energy in J
get_heating_energy_consumption
async def get_heating_energy_consumption(position: int = 1) -> float
Get the energy consumption for heating from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Energy consumption for heating in kWh
get_heating_spf
async def get_heating_spf(position: int = 1) -> float
Get the heating SPF from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Heating SPF
get_cooling_energy
async def get_cooling_energy(position: int = 1) -> float
Get the cooling energy from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Cooling energy in J
get_cooling_energy_consumption
async def get_cooling_energy_consumption(position: int = 1) -> float
Get the cooling energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Cooling energy consumption in kWh
get_cooling_spf
async def get_cooling_spf(position: int = 1) -> float
Get the cooling SPF from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Cooling SPF
get_hot_water_energy
async def get_hot_water_energy(position: int = 1) -> float
Get the hot water energy from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Hot water energy in J
get_hot_water_energy_consumption
async def get_hot_water_energy_consumption(position: int = 1) -> float
Get the hot water energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Hot water energy consumption in kWh
get_hot_water_spf
async def get_hot_water_spf(position: int = 1) -> float
Get the hot water SPF from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Hot water SPF
get_total_thermal_energy
async def get_total_thermal_energy(position: int = 1) -> float
Get the total thermal energy from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Total thermal energy in J
get_total_energy_consumption
async def get_total_energy_consumption(position: int = 1) -> float
Get the total energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Total energy consumption in kWh
get_excess_energy_consumption
async def get_excess_energy_consumption(position: int = 1) -> float
Get the excess energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Excess energy consumption in kWh
get_heating_excess_energy_consumption
async def get_heating_excess_energy_consumption(position: int = 1) -> float
Get the heating excess energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Heating excess energy consumption in kWh
get_cooling_excess_energy_consumption
async def get_cooling_excess_energy_consumption(position: int = 1) -> float
Get the cooling excess energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Cooling excess energy consumption in kWh
get_hot_water_excess_energy_consumption
async def get_hot_water_excess_energy_consumption(position: int = 1) -> float
Get the hot water excess energy consumption from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: Hot water excess energy consumption in kWh
get_total_spf
async def get_total_spf(position: int = 1) -> float
Get the SPF from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
float: SPF
has_active_cooling
async def has_active_cooling(position: int = 1, *, human_readable: bool = True) -> int | str
Check if active cooling for the heat pump is available.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_passive_cooling
async def has_passive_cooling(position: int = 1, *, human_readable: bool = True) -> int | str
Check if passive cooling for the heat pump is available.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
get_operating_time
async def get_operating_time(position: int = 1) -> int
Get the operating time from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Operating time in seconds
get_max_runtime
async def get_max_runtime(position: int = 1) -> int
Get the maximum runtime from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Maximum runtime in seconds
get_activation_counter
async def get_activation_counter(position: int = 1) -> int
Get the activation counter from the heat pump.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1
Returns
int: Number of heat pump activations
has_compressor_failure
async def has_compressor_failure(position: int = 1, *, human_readable: bool = True) -> int | str
Check if the heat pump has a compressor failure.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_source_failure
async def has_source_failure(position: int = 1, *, human_readable: bool = True) -> int | str
Check if the heat pump has a source failure.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_source_actuator_failure
async def has_source_actuator_failure(
position: int = 1,
*,
human_readable: bool = True,
) -> int | str
Check if the heat pump has a source actuator failure.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_three_phase_failure
async def has_three_phase_failure(position: int = 1, *, human_readable: bool = True) -> int | str
Check if the heat pump has a three-phase failure.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_source_pressure_failure
async def has_source_pressure_failure(
position: int = 1,
*,
human_readable: bool = True,
) -> int | str
Check if the heat pump has a source pressure failure.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_vfd_failure
async def has_vfd_failure(position: int = 1, *, human_readable: bool = True) -> int | str
Check if the heat pump has a source pressure variable frequency drive (VFD) failure.
Parameters
- position
int(default:1): Position of the heat pump, starting at 1 - human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)

