openapi: 3.0.0 servers: # Added by API Auto Mocking Plugin - description: Local HTTP API url: http://{APIUrl} variables: APIUrl: default: "192.168.1.100" description: Base Url to API ########## ## Info ## ########## info: version: "2.0.0" title: Heatit WiFi7 description: The API documentation for WiFi7 thermostat mode. contact: name: Heatit Support url: https://heatit.com/contact email: post@heatit.com termsOfService: https://heatit.com/terms-of-use-private externalDocs: description: Heatit's documents page url: http://documents.heatit.com ########## ## Tags ## ########## tags: - name: "Status" description: Get data from the device. - name: "Parameters" description: Change parameters on the device - name: "Reset" description: Reset settings, kwh or entire device to factory defaults - name: "DirectLink" description: Set and delete DirectLinks between devices. - name: "BlueFusion" description: Get data and change parameters on BlueFusion connected devices. ########### ## Paths ## ########### paths: /api/status: get: tags: - Status summary: Gets status of the device. description: Returns all information about the device. responses: "200": description: Get the information from the device. content: application/json: schema: $ref: "#/components/schemas/deviceInfo" /api/parameters: post: tags: - Parameters summary: Change parameters on the device. description: Change parameters on the device. At least one parameter is required. parameters: - $ref: "#/components/parameters/disableButtons" - $ref: "#/components/parameters/sensorMode" - $ref: "#/components/parameters/externalSensorFallback" - $ref: "#/components/parameters/sensorValue" - $ref: "#/components/parameters/internalMinimumTemperatureLimit" - $ref: "#/components/parameters/floorMinimumTemperatureLimit" - $ref: "#/components/parameters/externalMinimumTemperatureLimit" - $ref: "#/components/parameters/internalMaximumTemperatureLimit" - $ref: "#/components/parameters/floorMaximumTemperatureLimit" - $ref: "#/components/parameters/externalMaximumTemperatureLimit" - $ref: "#/components/parameters/internalSensorCalibration" - $ref: "#/components/parameters/floorSensorCalibration" - $ref: "#/components/parameters/externalSensorCalibration" - $ref: "#/components/parameters/regulationMode" - $ref: "#/components/parameters/temperatureControlHysteresis" - $ref: "#/components/parameters/temperatureDisplay" - $ref: "#/components/parameters/activeDisplayBrightness" - $ref: "#/components/parameters/standbyDisplayBrightness" - $ref: "#/components/parameters/actionAfterError" - $ref: "#/components/parameters/heatingSetpoint" - $ref: "#/components/parameters/coolingSetpoint" - $ref: "#/components/parameters/ecoSetpoint" - $ref: "#/components/parameters/powerRegulatorActiveTime" - $ref: "#/components/parameters/operatingMode" - $ref: "#/components/parameters/openWindowDetection" - $ref: "#/components/parameters/sizeOfLoad" responses: "200": description: Successful content: application/json: schema: oneOf: - $ref: "#/components/schemas/disableButtons" - $ref: "#/components/schemas/sensorMode" - $ref: "#/components/schemas/externalSensorFallback" - $ref: "#/components/schemas/sensorValue" - $ref: "#/components/schemas/internalMinimumTemperatureLimit" - $ref: "#/components/schemas/floorMinimumTemperatureLimit" - $ref: "#/components/schemas/externalMinimumTemperatureLimit" - $ref: "#/components/schemas/internalMaximumTemperatureLimit" - $ref: "#/components/schemas/floorMaximumTemperatureLimit" - $ref: "#/components/schemas/externalMaximumTemperatureLimit" - $ref: "#/components/schemas/internalSensorCalibration" - $ref: "#/components/schemas/floorSensorCalibration" - $ref: "#/components/schemas/externalSensorCalibration" - $ref: "#/components/schemas/regulationMode" - $ref: "#/components/schemas/temperatureControlHysteresis" - $ref: "#/components/schemas/temperatureDisplay" - $ref: "#/components/schemas/activeDisplayBrightness" - $ref: "#/components/schemas/standbyDisplayBrightness" - $ref: "#/components/schemas/actionAfterError" - $ref: "#/components/schemas/heatingSetpoint" - $ref: "#/components/schemas/coolingSetpoint" - $ref: "#/components/schemas/ecoSetpoint" - $ref: "#/components/schemas/powerRegulatorActiveTime" - $ref: "#/components/schemas/operatingMode" - $ref: "#/components/schemas/openWindowDetection" - $ref: "#/components/schemas/sizeOfLoad" examples: Disable buttons: value: status: Success disableButtons: 1 Sensor mode: value: status: Success sensorMode: 1 External sensor fallback: value: status: Success externalSensorFallback: 2 Sensor value: value: status: Success sensorValue: 1 Internal sensor min temp: value: status: Success internalMinTemperatureLimit: 5.0 Floor sensor min temp: value: status: Success floorMinTemperatureLimit: 5.0 External sensor min temp: value: status: Success externalMinTemperatureLimit: 5.0 Internal sensor max temp: value: status: Success internalMaxTemperatureLimit: 40.0 Floor sensor max temp: value: status: Success floorMaxTemperatureLimit: 40.0 External sensor max temp: value: status: Success externalMaxTemperatureLimit: 40.0 Internal sensor calibration: value: status: Success internalSensorCalibration: 0.0 Floor sensor calibration: value: status: Success floorSensorCalibration: 0.0 External sensor calibration: value: status: Success externalSensorCalibration: 0.0 Regulation mode: value: status: Success regulationMode: false Temperature control hysteresis: value: status: Success temperatureControlHysteresis: 0.5 Temperature display: value: status: Success temperatureDisplay: false Active display brightness: value: status: Success activeDisplayBrightness: 100 Standby display brightness: value: status: Success standbyDisplayBrightness: 50 Action after error: value: status: Success actionAfterError: 0 Heating setpoint: value: status: Success heatingSetpoint: 21.0 Cooling setpoint: value: status: Success coolingSetpoint: 18.0 Eco setpoint: value: status: Success ecoSetpoint: 18.0 Power regulator active time: value: status: Success powerRegulatorActiveTime: 20 Operating mode: value: status: Success operatingMode: 1 Open window detection: value: status: Success openWindowDetection: 0 Size of Load: value: status: Success sizeOfLoad: 0 Multiple parameters at the same time: value: status: Success disableButtons: 1 sensorMode: 1 externalSensorFallback: 2 sensorValue: 1 internalMinTemperatureLimit: 5.0 floorMinTemperatureLimit: 5.0 externalMinTemperatureLimit: 5.0 internalMaxTemperatureLimit: 40.0 floorMaxTemperatureLimit: 40.0 externalMaxTemperatureLimit: 40.0 internalSensorCalibration: 0.0 floorSensorCalibration: 0.0 externalSensorCalibration: 0.0 regulationMode: false temperatureControlHysteresis: 0.5 temperatureDisplay: false activeDisplayBrightness: 100 standbyDisplayBrightness: 50 actionAfterError: 0 heatingSetpoint: 21.0 coolingSetpoint: 18.0 ecoSetpoint: 18.0 powerRegulatorActiveTime: 20 operatingMode: 1 openWindowDetection: 0 sizeOfLoad: 0 "400": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: out of range. Failed2: value: status: failed reason: invalid data. "422": description: Validation Error - At least one parameter needs to be changed content: application/json: schema: type: object properties: status: type: string example: failed description: Status of the request. reason: type: string example: You need to change at least one parameter. description: Reason for the failure. example: status: failed reason: You need to change at least one parameter. /api/reset/factory: delete: tags: - Reset summary: Reset the device to factory default. description: Reset to factory defaults. parameters: - name: reset description: Resets the device to factory defaults. This will reset network settings or remove the device from the app. in: query required: false schema: type: string enum: - Reset responses: "200": description: Successful content: application/json: schema: type: object properties: reset: $ref: "#/components/schemas/ResetInfo/properties/statusSuccess" /api/reset/settings: delete: tags: - Reset summary: Reset settings to factory default. description: Reset settings to factory defaults. parameters: - name: resetSettings description: Resets all settings to factory defaults. This will not reset network settings or remove the device from the app. in: query required: false schema: type: string enum: - Reset responses: "200": description: Successful content: application/json: schema: type: object properties: reset: $ref: "#/components/schemas/ResetInfo/properties/statusSuccess" /api/reset/kwh: delete: tags: - Reset summary: Reset Kwh to 0. description: Reset Kwh to zero. parameters: - name: resetKwh description: Resets the Kwh counter to 0. in: query required: false schema: type: string enum: - Reset responses: "200": description: Successful content: application/json: schema: type: object properties: reset: $ref: "#/components/schemas/ResetInfo/properties/statusSuccess" /api/directlink: get: tags: - DirectLink summary: Get current DirectLink connections description: Returns list of all DirectLink connections for the Thermostat device responses: "200": description: Successful content: application/json: schema: type: object properties: relayControl: type: array items: type: object properties: id: type: string description: Unique id of the connected device name: type: string description: Name of the connected device macAddress: type: string description: MAC address of the connected device masterThermostat: type: array items: type: object properties: id: type: string name: type: string macAddress: type: string examples: Success: value: relayControl: - id: "sdf87g4bnfc87a523rbsdf4" name: "Relay living room" macAddress: "AA:BB:CC:DD:EE:FF" - id: "df4g8b7n2gh9a1c4r4sd2f7" name: "Relay kitchen" macAddress: "11:22:33:44:55:66" masterThermostat: - id: "9d8c7a6b5f4g1h2i3j4k5l6" name: "Thermostat bedroom" macAddress: "12:34:56:78:90:AB" Empty: value: relayControl: [] masterThermostat: [] post: tags: - DirectLink summary: Set a DirectLink connection. description: Set a DirectLink. Requires IP address of the device to connect to. parameters: - name: directLink description: Choose which function you want to DirectLink in: query required: true schema: type: string enum: - relayControl - masterThermostat - externalSensor - name: nodeId description: Node ID of the device to connect to in: query required: true schema: type: string example: "8AQycyKLaaiEEQRrm7KkEb" responses: "200": description: Successful content: application/json: schema: type: object properties: status: type: string description: Status of the request. nodeId: type: string description: Node ID of the connected device. examples: Success: value: status: success nodeId: "8AQycyKLaaiEEQRrm7KkEb" "422": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: No response from device Incompatible: value: status: failed reason: This DirectLink is not supported on the receiving device. delete: tags: - DirectLink summary: Delete a DirectLink connection. description: Removes a DirectLink connection from the Thermostat device. parameters: - name: directLink description: Choose which DirectLink function you want to remove from. in: query required: true schema: type: string enum: - relayControl - masterThermostat - slaveThermostat - externalSensor - name: nodeId description: Enter the id of the device you want to remove from the DirectLink connections. in: query required: true schema: type: string example: "8AQycyKLaaiEEQRrm7KkEb" responses: "200": description: Successful content: application/json: schema: type: object properties: status: type: string examples: Success: value: status: success Failed: value: status: failed reason: no response from device "422": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: No response from device Not Found: value: status: failed reason: DirectLink not found /api/bluefusion/devices: get: tags: - BlueFusion summary: Get list of devices connected via BlueFusion description: returns list of devices connected via BlueFusion responses: "200": description: All devices connected via BlueFusion content: application/json: schema: $ref: "#/components/schemas/Devices" /api/bluefusion/{id}/status: get: tags: - BlueFusion summary: Get information from the BlueFusion device description: Returns all information about the BlueFusion device. See the documentation for each device for response schema. responses: "200": description: All the devices content: application/json: examples: BLE-Temp3: value: id: sdf87g4bnfc87a523rbsdf4 name: BLE-Temp3 hall room: hall state: false temperature: 22.2 currentHumidity: 45 batteryPercentage: 100 parameters: disableButton: 2 minimumTemperatureLimit: 8.5 maximumTemperatureLimit: 35.5 calibration: -2.5 regulationMode: false temperatureControlHysteresis: 0.5 temperatureDisplay: false activeDisplayBrightness: 10 heatingSetpoint: 21.0 coolingSetpoint: 18.0 ecoSetpoint: 18.0 operatingMode: 1 OWD: openWindowDetection: 0 activeNow: false activeTime: 0 directLink: relayControl: [] masterThermostat: [] model: "Heatit BLE-Temp3" firmware: 1.2.2 /api/bluefusion/{id}/parameters: post: tags: - BlueFusion summary: Adjust parameters on a BlueFusion device. description: Adjust parameters on a BlueFusion connected device. See the documentation for each device for available parameters. responses: "200": description: Successful content: application/json: examples: Disable Buttons: value: status: success disableButton: 0 Minimum temperature limit (MIN): value: status: success minimumTemperature: 8.5 Maximum temperature limit (MAX): value: status: success maximumTemperature: 35.5 Sensor calibration (CAR): value: status: success sensorCalibration: -1.0 Regulation mode (REG): value: status: success regulationMode: false Temperature control hysteresis: value: status: success temperatureControlHysteresis: 0.5 Temperature display: value: status: success temperatureDisplay: true Active Display Brightness: value: status: success activeDisplayBrightness: 10 Heating setpoint: value: status: success setpoint: 21.5 Cooling setpoint: value: status: success setpoint: 18.5 ECO setpoint: value: status: success setpoint: 18.5 Operating mode: value: status: success operationMode: 1 Open Window Detection (OWD): value: status: success openWindowDetection: false Multiple parameters at the same time: value: status: success disableButton: true minimumTemperature: 5.0 maximumTemperature: 40.0 sensorCalibration: -1.2 regulationMode: false temperatureControlHysteresis: 0.5 temperatureDisplay: true activeDisplayBrightness: 10 heatingSetpoint: 21.0 coolingSetpoint: 18.0 ecoSetpoint: 18.0 operationMode: 1 openWindowDetection: false "400": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: out of range. Failed2: value: status: failed reason: invalid data. "422": description: Validation Error - At least one parameter needs to be changed content: application/json: schema: type: object properties: status: type: string example: failed reason: type: string example: You need to change at least one parameter. example: status: failed reason: You need to change at least one parameter. /api/bluefusion/{id}/reset/factory: delete: tags: - BlueFusion summary: Reset the BlueFusion device to factory default. description: Reset the BlueFusion device to factory defaults. This will reset network settings or remove the device from the app. parameters: - name: reset description: Reset the BlueFusion device to factory defaults. in: query required: false schema: type: string enum: - Reset responses: "200": description: Successful content: application/json: schema: type: object properties: status: type: string examples: Success: value: status: success Failed: value: status: failed reason: no response from device "400": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: No response from device /api/bluefusion/{id}/reset/settings: delete: tags: - BlueFusion summary: Reset settings on a BlueFusion device to factory default. description: Reset settings on a BlueFusion device to factory defaults. This will not reset network settings or remove the device from the app. parameters: - name: reset description: Resets all settings to factory defaults. This will not reset network settings or remove the device from the app. in: query required: false schema: type: string enum: - Reset responses: "200": description: Successful content: application/json: schema: type: object properties: status: type: string examples: Success: value: status: success Failed: value: status: failed reason: no response from device "400": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: No response from device /api/bluefusion/{id}/reset/kwh: delete: tags: - BlueFusion summary: Reset the kWh counter on a BlueFusion device to 0. description: Reset the kWh counter on a BlueFusion device to 0. parameters: - name: reset description: Resets the Kwh counter to 0. in: query required: false schema: type: string enum: - Reset responses: "200": description: Successful content: application/json: schema: type: object properties: status: type: string examples: Success: value: status: success Failed: value: status: failed reason: no response from device "400": description: Failed content: application/json: schema: type: object properties: status: type: string description: Status of the request. reason: type: string description: Reason for the failure. examples: Failed: value: status: failed reason: No response from device ################ ## Components ## ################¨ components: parameters: disableButtons: name: disableButtons description: > Disable buttons, must be enabled through the parameter, or turned back on locally by holding the center and right button for 30 seconds until the display shows "UNLK"
**0** = Buttons are not disabled. (Default)
**1** = Buttons are disabled.
**2** = Lock menu, buttons will function as normal, but the menu cannot be accessed. in: query required: false schema: $ref: "#/components/schemas/disableButtons" example: 0 sensorMode: name: sensorMode description: > Choose which sensor mode the device should operate with.
**0** = Floor sensor (F)
**1** = Internal sensor (A) (Default)
**2** = Internal sensor & floor sensor limitation (AF)
**3** = External sensor (A2)
**4** = External sensor & floor sensor limitation (A2F)
**5** = Power regulator mode (PWER)
**6** = External wireless sensor
**7** = Relay mode in: query required: false schema: $ref: "#/components/schemas/sensorMode" example: 1 externalSensorFallback: name: externalSensorFallback description: > Choose what happens if the external wireless sensor stops reporting.
**0** = Off
**1** = Floor sensor (F)
**2** = Internal sensor (A) (Default)
**3** = Internal sensor & floor sensor limitation (AF)
**4** = External sensor (A2)
**5** = External sensor & floor sensor limitation (A2F)
**6** = Power regulator mode (PWER) in: query required: false schema: $ref: "#/components/schemas/externalSensorFallback" example: 2 sensorValue: name: sensorValue description: > Select the resistance value of the connected NTC.
**0** = 6.8KΩ
**1** = 10KΩ (Default)
**2** = 12KΩ
**3** = 15KΩ
**4** = 22KΩ
**5** = 33KΩ
**6** = 47KΩ
**7** = 100KΩ in: query required: false schema: $ref: "#/components/schemas/sensorValue" example: 1 internalMinimumTemperatureLimit: name: internalMinimumTemperatureLimit description: > Decides the lowest temperature allowed by the thermostat when using sensor mode A.
Minimum: **5.0** = 5.0°C (Default)
Maximum: **40.0** = 40.0°C in: query required: false schema: $ref: "#/components/schemas/internalMinimumTemperatureLimit" example: 5.5 internalMaximumTemperatureLimit: name: internalMaximumTemperatureLimit description: > Decide the highest temperature allowed by the thermostat when using sensor mode A.
Minimum: **5.0** = 5.0°C
Maximum: **40.0** = 40.0°C (Default) in: query required: false schema: $ref: "#/components/schemas/internalMaximumTemperatureLimit" example: 39.5 floorMinimumTemperatureLimit: name: floorMinimumTemperatureLimit description: > Decides the lowest temperature allowed by the thermostat when using sensor mode AF, F, A2F.
Minimum: **5.0** = 5.0°C (Default)
Maximum: **40.0** = 40.0°C in: query required: false schema: $ref: "#/components/schemas/floorMinimumTemperatureLimit" example: 5.5 floorMaximumTemperatureLimit: name: floorMaximumTemperatureLimit description: > Decide the highest temperature allowed by the thermostat when using sensor mode AF, F, A2F.
Minimum: **5.0** = 5.0°C
Maximum: **40.0** = 40.0°C (Default) in: query required: false schema: $ref: "#/components/schemas/floorMaximumTemperatureLimit" example: 39.5 externalMinimumTemperatureLimit: name: externalMinimumTemperatureLimit description: > Decide the lowest temperature allowed by the thermostat when using sensor mode A2.
Minimum: **5.0** = 5.0°C (Default)
Maximum: **40.0** = 40.0°C in: query required: false schema: $ref: "#/components/schemas/externalMinimumTemperatureLimit" example: 5.5 externalMaximumTemperatureLimit: name: externalMaximumTemperatureLimit description: > Decide the highest temperature allowed by the thermostat when using sensor mode A2.
Minimum: **5.0** = 5.0°C
Maximum: **40.0** = 40.0°C (Default) in: query required: false schema: $ref: "#/components/schemas/externalMaximumTemperatureLimit" example: 39.5 internalSensorCalibration: name: internalSensorCalibration description: > Manually calibrate sensor A ±6°C.
Minimum: **-6.0** = -6.0°C
Default: **0.0** = 0.0°C
Maximum: **6.0** = +6.0°C in: query required: false schema: $ref: "#/components/schemas/internalSensorCalibration" example: -2.3 floorSensorCalibration: name: floorSensorCalibration description: > Manually calibrate sensor F ±6°C.
Minimum: **-6.0** = -6.0°C
Default: **0.0** = 0.0°C
Maximum: **6.0** = +6.0°C in: query required: false schema: $ref: "#/components/schemas/floorSensorCalibration" example: -2.3 externalSensorCalibration: name: externalSensorCalibration description: > Manually calibrate sensor A2 ±6°C.
Minimum: **-6.0** = -6.0°C
Default: **0.0** = 0.0°C
Maximum: **6.0** = +6.0°C in: query required: false schema: $ref: "#/components/schemas/externalSensorCalibration" example: -2.3 regulationMode: name: regulationMode description: > Choose between regulation modes PWM and Hysteresis.
**false** = **0** = Hysteresis (Default)
**true** = **1** = PWM in: query required: false schema: $ref: "#/components/schemas/regulationMode" example: false temperatureControlHysteresis: name: temperatureControlHysteresis description: > Choose the hysteresis used when regulation mode is set to HYST.
Minimum: **0.3** = 0.3°C
Default: **0.5** = 0.5°C
Maximum: **3.0** = 3.0°C in: query required: false schema: $ref: "#/components/schemas/temperatureControlHysteresis" example: 0.5 temperatureDisplay: name: temperatureDisplay description: > Select what is shown on the display during Standby state.
**false** = **0** = Display setpoint (Default)
**true** = **1** = Display measured temperature in: query required: false schema: $ref: "#/components/schemas/temperatureDisplay" example: false activeDisplayBrightness: name: activeDisplayBrightness description: > Configure the brightness of the display during active state.
Minimum: **10** = 10%
Maximum: **100** = 100% (Default) in: query required: false schema: $ref: "#/components/schemas/activeDisplayBrightness" example: 100 standbyDisplayBrightness: name: standbyDisplayBrightness description: > Configure the brightness of the display during standby state.
Minimum: **0** = 0%
Default: **50** = 50%
Maximum: **100** = 100% in: query required: false schema: $ref: "#/components/schemas/standbyDisplayBrightness" example: 5 actionAfterError: name: actionAfterError description: > Decide how the device should react when the overload / overheating features have turned OFF the relay (Default 0).
**0** = Device will turn off and show an error on the display. (Default)
**10** - **65535** = Device will attempt to turn on again after an error based on the delay specified (10 to 65535 seconds). in: query required: false schema: $ref: "#/components/schemas/actionAfterError" example: 300 heatingSetpoint: name: heatingSetpoint description: > Set setpoint for Heating mode.
Minimum: **5.0** = 5.0°C
Default: **21.0** = 21.0°C (Default)
Maximum: **40.0** = 40.0°C in: query required: false schema: $ref: "#/components/schemas/heatingSetpoint" example: 21.5 coolingSetpoint: name: coolingSetpoint description: > Set setpoint for Cooling mode.
Minimum: **5.0** = 5.0°C
Default: **18.0** = 18.0°C (Default)
Maximum: **40.0** = 40.0°C in: query required: false schema: $ref: "#/components/schemas/coolingSetpoint" example: 18.5 ecoSetpoint: name: ecoSetpoint description: > Set setpoint for ECO mode.
Minimum: **5.0** = 5.0°C
Default: **18.0** = 18.0°C (Default)
Maximum: **40.0** = 40.0°C in: query required: false schema: $ref: "#/components/schemas/ecoSetpoint" example: 18.5 powerRegulatorActiveTime: name: powerRegulatorActiveTime description: > Set the % of time the relay should be active when using PWER mode. (30-minute duty cycle)
Minimum: **10** = 10% = 3 minutes on - 27 minutes off.
Default: **20** = 20% = 6 minutes on - 24 minutes off.
Maximum: **100** = 100% = 30 minutes on - 0 minutes off. in: query required: false schema: $ref: "#/components/schemas/powerRegulatorActiveTime" example: 20 operatingMode: name: operatingMode description: > Set the thermostat mode.
**0** = OFF (Thermostat will not operate)
**1** = Heating mode (Default)
**2** = Cooling mode
**3** = ECO mode in: query required: false schema: $ref: "#/components/schemas/operatingMode" example: 1 openWindowDetection: name: openWindowDetection description: > Choose to enable or disable the Open Window Detection.
**false** = **0** = Open Window Detection is disabled. (Default)
**true** = **1** = Open Window Detection is enabled. in: query required: false schema: $ref: "#/components/schemas/openWindowDetection" example: false sizeOfLoad: name: sizeOfLoad description: > Allows the user to decide the power consumption of the connected load in 100W increments.
**0** = Uses power metering values. (Default)
**100** - **9900** = 100W - 9900W = Allows the user to set the size of the load, used when connected to a contactor. in: query required: false schema: $ref: "#/components/schemas/sizeOfLoad" example: 0 ################# ## SCHEMAS ## ################# schemas: disableButtons: type: integer pattern: '^(?:0|1|2)$' description: > Disable buttons, must be enabled through the parameter, or turned back on locally by holding the center and right button for 30 seconds until the display shows "UNLK"
**0** = Buttons are not disabled. (Default)
**1** = Buttons are disabled.
**2** = Lock menu, buttons will function as normal, but the menu cannot be accessed. enum: - 0 - 1 - 2 default: 0 sensorMode: type: integer pattern: '^(?:0|1|2|3|4|5|6|7)$' description: > Choose which sensor mode the device should operate with.
**0** = Floor sensor (F)
**1** = Internal sensor (A) (Default)
**2** = Internal sensor & floor sensor limitation (AF)
**3** = External sensor (A2)
**4** = External sensor & floor sensor limitation (A2F)
**5** = Power regulator mode (PWER)
**6** = External wireless sensor
**7** = Relay mode (RELA) enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 default: 1 externalSensorFallback: type: integer pattern: '^(?:0|1|2|3|4|5|6)$' description: > Choose what happens if the external sensor stops reporting.
**0** = Off
**1** = Floor sensor (F)
**2** = Internal sensor (A) (Default)
**3** = Internal sensor & floor sensor limitation (AF)
**4** = External sensor (A2)
**5** = External sensor & floor sensor limitation (A2F)
**6** = Power regulator mode (PWER) enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 default: 2 sensorValue: type: integer pattern: '^(?:0|1|2|3|4|5|6|7)$' description: > Select the resistance value of the connected NTC.
**0** = 6.8KΩ
**1** = 10KΩ (Default)
**2** = 12KΩ
**3** = 15KΩ
**4** = 22KΩ
**5** = 33KΩ
**6** = 47KΩ
**7** = 100KΩ enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 default: 1 internalMinimumTemperatureLimit: type: number format: float pattern: '^\d{1,2}\.\d{1}$' description: > Decides the lowest temperature allowed by the thermostat when using sensor mode A.
Minimum: **5.0** = 5.0°C (Default)
Maximum: **40.0** = 40.0°C multipleOf: 0.5 default: 5.0 minimum: 5.0 maximum: 40.0 internalMaximumTemperatureLimit: type: number format: float pattern: '^\d{1,2}\.\d{1}$' description: > Decide the highest temperature allowed by the thermostat when using sensor mode A.
Minimum: **5.0** = 5.0°C
Maximum: **40.0** = 40.0°C (Default) multipleOf: 0.5 default: 40.0 minimum: 5.0 maximum: 40.0 floorMinimumTemperatureLimit: type: number format: float pattern: '^\d{1,2}\.\d{1}$' description: > Decides the lowest temperature allowed by the thermostat when using sensor mode AF, F, A2F.
Minimum: **5.0** = 5.0°C (Default)
Maximum: **40.0** = 40.0°C multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 5.0 floorMaximumTemperatureLimit: type: number format: float pattern: '^\d{1,2}\.\d{1}$' description: > Decide the highest temperature allowed by the thermostat when using sensor mode AF, F, A2F.
Minimum: **5.0** = 5.0°C
Maximum: **40.0** = 40.0°C (Default) multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 40.0 externalMinimumTemperatureLimit: type: number format: float pattern: '^\d{1,2}\.\d{1}$' description: > Decide the lowest temperature allowed by the thermostat when using sensor mode A2.
Minimum: **5.0** = 5.0°C (Default)
Maximum: **40.0** = 40.0°C multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 5.0 externalMaximumTemperatureLimit: type: number format: float pattern: '^\d{1,2}\.\d{1}$' description: > Decide the highest temperature allowed by the thermostat when using sensor mode A2.
Minimum: **5.0** = 5.0°C
Maximum: **40.0** = 40.0°C (Default) multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 40.0 internalSensorCalibration: type: number format: float pattern: '^-?\d{1}\.\d{1}$' description: > Manually calibrate sensor A ±6°C.
Minimum: **-6.0** = -6.0°C
Default: **0.0** = 0.0°C
Maximum: **6.0** = +6.0°C multipleOf: 0.1 minimum: -6.0 maximum: 6.0 default: 0.0 floorSensorCalibration: type: number format: float pattern: '^-?\d{1}\.\d{1}$' description: > Manually calibrate sensor F ±6°C.
Minimum: **-6.0** = -6.0°C
Default: **0.0** = 0.0°C
Maximum: **6.0** = +6.0°C multipleOf: 0.1 minimum: -6.0 maximum: 6.0 default: 0.0 externalSensorCalibration: type: number format: float pattern: '^-?\d{1}\.\d{1}$' description: > Manually calibrate sensor A2 ±6°C.
Minimum: **-6.0** = -6.0°C
Default: **0.0** = 0.0°C
Maximum: **6.0** = +6.0°C multipleOf: 0.1 minimum: -6.0 maximum: 6.0 default: 0.0 regulationMode: type: boolean description: > Choose between regulation modes PWM and Hysteresis.
**false** = **0** = Hysteresis (Default)
**true** = **1** = PWM enum: - false - true - 0 - 1 default: false temperatureControlHysteresis: type: number format: float pattern: '^\d{1}\.\d{1}$' description: > Choose the hysteresis used when regulation mode is set to HYST.
Minimum: **0.3** = 0.3°C
Default: **0.5** = 0.5°C
Maximum: **3.0** = 3.0°C multipleOf: 0.1 minimum: 0.3 maximum: 3.0 default: 0.5 temperatureDisplay: type: boolean description: > Select what is shown on the display during Standby state.
**false** = **0** = Display setpoint (Default)
**true** = **1** = Display measured temperature enum: - false - true - 0 - 1 default: false activeDisplayBrightness: type: integer pattern: '^\d{2,3}$' description: > Configure the brightness of the display during active state.
Minimum: **10** = 10%
Maximum: **100** = 100% (Default) enum: - 10 - 20 - 30 - 40 - 50 - 60 - 70 - 80 - 90 - 100 multipleOf: 10 minimum: 10 maximum: 100 default: 100 standbyDisplayBrightness: type: integer pattern: '^\d{1,2}$' description: > Configure the brightness of the display during standby state.
Minimum: **0** = 0%
Default: **50** = 50%
Maximum: **100** = 100% enum: - 0 - 10 - 20 - 30 - 40 - 50 - 60 - 70 - 80 - 90 - 100 multipleOf: 10 minimum: 0 maximum: 100 default: 50 actionAfterError: type: integer pattern: '^\d{1,5}$' description: > Decide how the device should react when the overload / overheating features have turned OFF the relay (Default 0).
**0** = Device will turn off and show an error on the display. (Default)
**10** - **65535** = Device will attempt to turn on again after an error based on the delay specified (10 to 65535 seconds). minimum: 0 maximum: 65535 default: 0 example: 300 heatingSetpoint: type: number format: float pattern: '^(?:(?:[5-9]|[1-2]\d|3[0-9])(?:\.0|\.5)|40\.0)$' description: > Set setpoint for Heating mode.
Minimum: **5.0** = 5.0°C
Default: **21.0** = 21.0°C (Default)
Maximum: **40.0** = 40.0°C multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 21.0 coolingSetpoint: type: number format: float pattern: '^(?:(?:[5-9]|[1-2]\d|3[0-9])(?:\.0|\.5)|40\.0)$' description: > Set setpoint for Cooling mode.
Minimum: **5.0** = 5.0°C
Default: **18.0** = 18.0°C (Default)
Maximum: **40.0** = 40.0°C multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 18.0 ecoSetpoint: type: number format: float pattern: '^(?:(?:[5-9]|[1-2]\d|3[0-9])(?:\.0|\.5)|40\.0)$' description: > Set setpoint for ECO mode.
Minimum: **5.0** = 5.0°C
Default: **18.0** = 18.0°C (Default)
Maximum: **40.0** = 40.0°C multipleOf: 0.5 minimum: 5.0 maximum: 40.0 default: 18.0 powerRegulatorActiveTime: type: integer pattern: '^\d{1,2}$' description: > Set the % of time the relay should be active when using PWER mode. (30-minute duty cycle)
Minimum: **10** = 10% = 3 minutes on - 27 minutes off.
Default: **20** = 20% = 6 minutes on - 24 minutes off.
Maximum: **100** = 100% = 30 minutes on - 0 minutes off. minimum: 10 maximum: 100 default: 20 operatingMode: type: integer pattern: '^(?:0|1|2|3)$' description: > Set the thermostat mode.
**0** = OFF (Thermostat will not operate)
**1** = Heating mode (Default)
**2** = Cooling mode
**3** = ECO mode enum: - 0 - 1 - 2 - 3 default: 1 openWindowDetection: type: boolean pattern: '^\d(true|false|0|1)$' description: > Choose to enable or disable the Open Window Detection.
**false** = **0** = Open Window Detection is disabled. (Default)
**true** = **1** = Open Window Detection is enabled. enum: - false - true - 0 - 1 default: false sizeOfLoad: type: integer pattern: '^\d{1,2}$' description: > Allows the user to decide the power consumption of the connected load in 100W increments.
**0** = Uses power metering values. (Default)
**100** - **9900** = 100W - 9900W = Allows the user to set the size of the load, used when connected to a contactor. minimum: 0 maximum: 9900 default: 0 ################# ## Device Info ## ################# deviceInfo: type: object properties: id: type: string description: Unique id for each device. example: dfkfj38f652900jd name: type: string description: Device name from the MyHeatit app. example: Thermostat hall room: type: string description: The room the device is linked to in the MyHeatit app. example: hall state: type: string description: Current heating state of the thermostat.
**Idle** = relay is open.
**Heating** = relay is closed in heating- or eco mode.
**Cooling** = relay is closed in cooling mode. enum: - Idle - Heating - Cooling example: Idle currentPower: type: integer pattern: '^\d{1,4}$' description: Current power draw of the device in watt. example: 2500 totalConsumption: type: number format: float pattern: '^\d+\.\d{2}$' description: Total consumption in kWh example: 624.24 internalTemperature: type: number format: float pattern: '^-?\d{1,3}\.\d{1}$' description: Current measurement from the internal temperature sensor. example: 20.2 floorTemperature: type: number format: float pattern: '^-?\d{1,3}\.\d{1}$' description: Current measurement from the floor temperature sensor. example: 21.2 externalTemperature: type: number format: float pattern: '^-?\d{1,3}\.\d{1}$' description: Current measurement from the external temperature sensor. example: 22.2 parameters: type: object properties: disableButtons: $ref: '#/components/schemas/disableButtons' sensorMode: $ref: '#/components/schemas/sensorMode' externalSensorFallback: $ref: '#/components/schemas/externalSensorFallback' sensorValue: $ref: '#/components/schemas/sensorValue' internalMinimumTemperatureLimit: $ref: '#/components/schemas/internalMinimumTemperatureLimit' internalMaximumTemperatureLimit: $ref: '#/components/schemas/internalMaximumTemperatureLimit' floorMinimumTemperatureLimit: $ref: '#/components/schemas/floorMinimumTemperatureLimit' floorMaximumTemperatureLimit: $ref: '#/components/schemas/floorMaximumTemperatureLimit' externalMinimumTemperatureLimit: $ref: '#/components/schemas/externalMinimumTemperatureLimit' externalMaximumTemperatureLimit: $ref: '#/components/schemas/externalMaximumTemperatureLimit' internalSensorCalibration: $ref: '#/components/schemas/internalSensorCalibration' floorSensorCalibration: $ref: '#/components/schemas/floorSensorCalibration' externalSensorCalibration: $ref: '#/components/schemas/externalSensorCalibration' regulationMode: $ref: '#/components/schemas/regulationMode' temperatureControlHysteresis: $ref: '#/components/schemas/temperatureControlHysteresis' temperatureDisplay: $ref: '#/components/schemas/temperatureDisplay' activeDisplayBrightness: $ref: '#/components/schemas/activeDisplayBrightness' standbyDisplayBrightness: $ref: '#/components/schemas/standbyDisplayBrightness' actionAfterError: $ref: '#/components/schemas/actionAfterError' heatingSetpoint: $ref: '#/components/schemas/heatingSetpoint' coolingSetpoint: $ref: '#/components/schemas/coolingSetpoint' ecoSetpoint: $ref: '#/components/schemas/ecoSetpoint' powerRegulatorActiveTime: $ref: '#/components/schemas/powerRegulatorActiveTime' operatingMode: $ref: '#/components/schemas/operatingMode' openWindowDetection: $ref: '#/components/schemas/openWindowDetection' sizeOfLoad: $ref: '#/components/schemas/sizeOfLoad' OWD: type: object properties: openWindowDetection: $ref: '#/components/schemas/openWindowDetection' activeNow: type: boolean description: Shows the current status of the Open Window Detection
**false** = Open Window detection is currently not triggered.
**true** = An Open Window has been detected and the setpoint is lowered. example: false activeTime: type: integer description: Number of seconds left until Open Window Detection returns to normal setpoint. Device can also return to previous setpoint if the temperature is changed from the local controls, or if the temperature rises by 3°. example: 3600 blueFusion: type: object description: > Devices connected with BlueFusion to this device. properties: link: type: array items: type: object properties: id: description: Unique id for each device format: id name: type: string description: Device name used in the MyHeatit app. device: type: string description: What type of product the device is. example: - id: df4g8b7n2gh9a1c4r4sd2f7 name: Thermostat living room device: Heatit BLE-Temp3 - id: 6f7g8s5a4h9j2k3l1m0n5b2 name: Thermostat kitchen device: Heatit BLE-Temp3 directLink: type: object properties: relayControl: type: array items: type: string masterThermostat: type: array items: type: string network: type: object properties: SSID: type: string description: SSID of the connected wifi network example: "Home WiFi" mac: type: string description: Mac address of the device example: "aa:bb:cc:11:22:33" ipAddress: type: string description: IP address of the device on the local network. example: "192.168.1.10" wifiSignalStrength: type: string description: Wifi signal strength example: "65dBm" status: type: string description: Status of the connection. example: "ok" firmware: type: string description: Current firmware version of the device. example: "1.2" model: type: string description: Model of the device. example: "Heatit WiFi7" ResetInfo: type: object properties: statusSuccess: type: string enum: - success example: success statusFailed: type: string enum: - failed example: failed Devices: type: array items: type: object properties: id: description: Unique id for each device type: string format: id example: sdf87g4bnfc87a523rbsdf4 name: type: string description: Device name used in the MyHeatit app. example: BLE-Temp3 hall device: type: string description: What type of product the device is. example: BLE-Temp3 example: - id: df4g8b7n2gh9a1c4r4sd2f7 name: Thermostat living room device: Heatit BLE-Temp3 - id: 6f7g8s5a4h9j2k3l1m0n5b2 name: Thermostat kitchen device: Heatit BLE-Temp3 - id: 9d8c7a6b5f4g1h2i3j4k5l6 name: Thermostat bedroom device: Heatit BLE-Temp3