Important Updates to Viessmann API (Effective 30.04.2025)

31.03.2025

We are announcing two important upcoming changes to the Viessmann API. These updates, effective 30.04.2025, aim to improve the API's functionality, enhance consistency, and streamline the development process for our users.

I. IoT Feature Renaming and Standardization

This update introduces a breaking change to the Viessmann API's IoT features, primarily involving the renaming and standardization of several data point identifiers. These changes are necessary to improve platform consistency and align with ongoing updates. Existing integrations using the legacy feature names will cease to function correctly. Please note that some of these changes were previously announced in August 2024.

Impact:

  • This is a breaking change. Applications relying on the affected IoT feature names will require immediate updates to maintain functionality.

  • Affected device types: Buffer storage tank, Heating, Domestic hot water (DHW), Fuel cell, Heat pump, and Ventilation.

Reason for Change:

These changes are driven by platform updates aimed at enhancing consistency and standardization across our IoT features.

Detailed Changes:

The following IoT feature names have been updated:

  • Buffer storage tank:
    Replace heating.buffer.* with heating.bufferCylinder.*

    • heating.buffer.charging.level.bottom → heating.bufferCylinder.charging.level.bottom

    • heating.buffer.charging.level.middle → heating.bufferCylinder.charging.level.middle

    • heating.buffer.charging.level.top → heating.bufferCylinder.charging.level.top

    • heating.buffer.charging.level.total → heating.bufferCylinder.charging.level.total

    • heating.buffer.sensors.temperature.main → heating.bufferCylinder.sensors.temperature.main

    • heating.buffer.sensors.temperature.top → heating.bufferCylinder.sensors.temperature.top

  • Heating:

    • heating.circuits.N.operating.programs.summerEco → heating.circuits.N.operating.programs.reducedEnergySaving

    • heating.co2.saving → heating.co2.saving.raw

  • Domestic hot water (DHW):
    Replace *.hotWaterStorage.* with *.dhwCylinder.*

    • heating.dhw.comfort → heating.dhw.operating.modes.comfort / .eco / .active

    • heating.dhw.sensors.temperature.hotWaterStorage.bottom → heating.dhw.sensors.temperature.dhwCylinder.bottom

    • heating.dhw.sensors.temperature.hotWaterStorage.midBottom → heating.dhw.sensors.temperature.dhwCylinder.midBottom

    • heating.dhw.sensors.temperature.hotWaterStorage.middle → heating.dhw.sensors.temperature.dhwCylinder.middle

    • heating.dhw.sensors.temperature.hotWaterStorage.top → heating.dhw.sensors.temperature.dhwCylinder.top

    • heating.dhw.sensors.temperature.hotWaterStorage → heating.dhw.sensors.temperature.dhwCylinder

  • Fuel cell:
    Replace heating.fuelcell.* with fuelCell.*

    • heating.fuelCell.operating.modes.active → fuelCell.operating.modes.active

    • heating.fuelCell.operating.modes.chimneySweeperMode → fuelCell.operating.modes.chimneySweeperMode

    • heating.fuelCell.operating.modes.ecological → fuelCell.operating.modes.ecological

    • heating.fuelCell.operating.modes.economical → fuelCell.operating.modes.economical

    • heating.fuelCell.operating.modes.energyControlled → fuelCell.operating.modes.energyControlled

    • heating.fuelCell.operating.modes.heatControlled → fuelCell.operating.modes.heatControlled

    • heating.fuelCell.operating.modes.holidayWithFuelCellOff → fuelCell.operating.modes.holidayWithFuelCellOff

    • heating.fuelCell.operating.modes.holidayWithFuelCellOn → fuelCell.operating.modes.holidayWithFuelCellOn

    • heating.fuelCell.operating.modes.maintenance → fuelCell.operating.modes.maintenance

    • heating.fuelCell.operating.modes.party → fuelCell.operating.modes.party

    • heating.fuelCell.operating.modes.standby → fuelCell.operating.modes.standby

    • heating.fuelCell.operating.phase → fuelCell.operating.phase

    • heating.fuelCell.power.production → fuelCell.power.production

    • heating.fuelCell.sensors.temperature.return → fuelCell.sensors.temperature.return

    • heating.fuelCell.sensors.temperature.supply → fuelCell.sensors.temperature.supply

    • heating.fuelCell.statistics → fuelCell.statistics

  • Heat pump:
    Replace heating.scop.* with heating.spf.*

    • heating.scop.dhw → heating.spf.dhw

    • heating.scop.heating → heating.spf.heating

    • heating.scop.total → heating.spf.total

  • Ventilation:
    Replace ventilation.operating.programs.* with ventilation.operating.state / ventilation.quickmodes.* / ventilation.levels.*

    • ventilation.operating.programs.comfort → ventilation.quickmodes.comfort

    • ventilation.operating.programs.eco → ventilation.quickmodes.eco

    • ventilation.operating.programs.forcedLevelFour → ventilation.quickmodes.forcedLevelFour

    • ventilation.operating.programs.holiday → ventilation.quickmodes.holiday

    • ventilation.operating.programs.levelFour → ventilation.levels.levelFour

    • ventilation.operating.programs.levelOne → ventilation.levels.levelOne

    • ventilation.operating.programs.levelThree → ventilation.levels.levelThree

    • ventilation.operating.programs.levelTwo → ventilation.levels.levelTwo

    • ventilation.operating.programs.silent → ventilation.quickmodes.silent

II. API Endpoints Update

We are replacing several API endpoints with their current versions.

Affected Endpoints:

  • /iot/v1/equipment/installations/{installationId}/gateways/{gatewaySerial}/devices/{deviceId}/features will be replaced with /iot/v2/features/installations/{installationId}/gateways/{gatewaySerial}/devices/{deviceId}/features

  • /iot/v1/equipment/installations/{installationId}/gateways/{gatewaySerial}/features will be replaced with /iot/v2/features/installations/{installationId}/gateways/{gatewaySerial}/features

  • /iot/v1/equipment/installations/{installationId}/features will be replaced with /iot/v2/features/installations/{installationId}/features

  • /iot/v1/features will be replaced with /iot/v2/features

Important Notes:

  • The previous versions (/iot/v1/...) of the listed endpoints will be removed entirely on 30.04.2025. As a result, any existing integrations using these endpoints will cease to function.

  • The new endpoints (/iot/v2/...) function identically to their predecessors. There are no changes to the request parameters, response formats, or any other functional aspects.

Action Required (For Both Updates):

  • For IoT Feature Renaming: Update your API integrations to use the new feature names. The renamed IoT features are already available via the API for testing and implementation. Legacy names will be fully deprecated and removed after this date.

  • For API Endpoints Update: Update your integrations to use the new API endpoints (/iot/v2/...). The new endpoints are already available for use.

We understand that these changes may require adjustments to your existing code. To assist you in this process, we recommend referring to the API documentation.

Support Channels:

If you have any questions or require further assistance regarding these updates, please don't hesitate to reach out to our developer community forum or send an email to developer@viessmann.com.

We appreciate your understanding and cooperation as we continue to improve the Viessmann API.