Control heating schedules and hot water supply

___

One of the many possibilities that a connected climate solution and the use of the API provides, is that you can remotely control your system. And example of what you can control is the heating schedule. It allows you change the time throughout a week, in which your heating system or your domestic hot water storage is running.

After you have successfully authenticated to the Viessmann API, you can call many different features from our IoT product that let's you monitor and control your system. For the heating schedule, you can use the following feature:

curl command

Copied to clipboard
        curl -X GET https://api.viessmann.com/iot/v1/equipment/installations/{{installationID}}/gateways/{{gatewaySerial}}/devices/{{deviceId}}/features/heating.circuits.0.heating.schedule
    

Response

        {
  "feature": "heating.circuits.0.heating.schedule",
  "gatewayId": "{gatewayId}",
  "apiVersion": 1,
  "isEnabled": true,
  "isReady": true,
  "timestamp": "{Date}",
  "properties": {
    "active": {
      "value": true,
      "type": "boolean",
    },
    "entries": {
      "value": {
        "mon": [
          {
            "position": 0,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 1,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 2,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          }
        ],
        "tue": [
          {
            "position": 0,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 1,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 2,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          }
        ],
        "wed": [
          {
            "position": 0,
            "start": "05:30",
            "end": "22:00",
            "mode": "normal"
          }
        ],
        "thu": [
          {
            "position": 0,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 1,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 2,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          }
        ],
        "fri": [
          {
            "position": 0,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 1,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 2,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          }
        ],
        "sat": [
          {
            "position": 0,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 1,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 2,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          }
        ],
        "sun": [
          {
            "position": 0,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 1,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          },
          {
            "position": 2,
            "start": "00:00",
            "end": "24:00",
            "mode": "normal"
          }
        ]
      },
      "type": "Schedule",
    }
  },
  "commands": {
    "setSchedule": {
      "name": "setSchedule",
      "isExecutable": true,
      "params": {
        "newSchedule": {
          "type": "Schedule",
          "constraints": {
            "maxEntries": 4,
            "resolution": 10,
            "modes": [
              "normal"
            ],
            "defaultMode": "reduced",
            "overlapAllowed": true
          },
          "required": true
        }
      },
      "uri": "/v1/gateways/{gatewayId}/devices/0/features/heating.circuits.0.heating.schedule/commands/setSchedule",
      "description": "DESC"
    }
  },
  "uri": "/v1/gateways/{gatewayId}/devices/0/features/heating.circuits.0.heating.schedule",
  "deviceId": "0",
}
    

One of the many possibilities that a connected climate solution and the use of the API provides, is that you can remotely control your system. And example of what you can control is the heating schedule. It allows you change the time throughout a week, in which your heating system or your domestic hot water storage is running.

After you have successfully authenticated to the Viessmann API, you can call many different features from our IoT product that let's you monitor and control your system. For the heating schedule, you can use the following feature:

APIs used

IoT

Device status

Check the status of your installation and see whether your device is working properly.

Try Now
IoT

Events

Get information about events from the event history for your installation or your gateway, including errors.

Try Now
IoT

Statistics

Track the consumption, e.g. gas or power consumption and get additional information on your burner or compressor like starts or running hours.

Try Now

Share your showcase

We would also like to give you the opportunity to show your ideas and applications. Tell the community about your use case and inspire others or get in touch with us and send us your ideas.