Hello Michael, it still does not work. See the 3rd curl request in the script. Here is the script: #!/bin/bash #ACCOUNT_JSON_FILE=".account.json" TOKEN_JSON_FILE=".token.json" #SETTING_JSON_FILE=".setting.json" installationId=$(cat .setting.json | jq -r '.installationId') gatewaySerial=$(cat .setting.json | jq -r '.gatewaySerial') # if token is already present load it if [[ -f $TOKEN_JSON_FILE ]]; then access_token=$(cat .token.json | jq -r '.access_token') else echo " design error 1" exit 1 fi curl -X GET "https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/devices/0/features/heating.dhw.oneTimeCharge" \ -H "Authorization: Bearer $access_token" echo " " echo " " curl -d {} -X POST https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/devices/0/features/heating.dhw.oneTimeCharge/commands/deactivate -H "Authorization: Bearer $access_token" echo " " curl -d'{}' -X POST -s "https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/devices/0/features/heating.dhw.oneTimeCharge/commands/activate" \ -H "Authorization: Bearer $access_token" echo " " curl -d "{}" -X POST -s "https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/devices/0/features/heating.dhw.oneTimeCharge/commands/deactivate" \ -H "Authorization: Bearer $access_token" echo " " curl -d {} -X POST -s "https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/devices/0/features/heating.dhw.oneTimeCharge/commands/activate" \ -H "Authorization: Bearer $access_token" echo " " curl -d {} -X POST -s "https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/devices/0/features/heating.dhw.oneTimeChargewhatever" \ -H "Authorization: Bearer $access_token" echo " " curl -d {} -X POST -s "https://api.viessmann.com/iot/v1/equipment/installations/$installationId/gateways/$gatewaySerial/dummy1/100/dummy2/i_do_not_like_500" \ -H "Authorization: Bearer $access_token" echo " " curl -d {} -X POST -s "https://api.viessmann.com/iot/v1/equipment/installations/0123456/gateways/0123456789012345/devices/0/features/heating.dhw.oneTimeCharge/commands/activate" \ -H "Authorization: Bearer $access_token" echo " " And here the outcome: {"data":{"properties":{"active":{"value":false,"type":"boolean"}},"commands":{"activate":{"uri":"https://api.viessmann.com/iot/v1/equipment/installations/123456/gateways/012345678912345/devices/0/features/heating.dhw.oneTimeCharge/commands/activate","name":"activate","isExecutable":true,"params":{}},"deactivate":{"uri":"https://api.viessmann.com/iot/v1/equipment/installations/123456/gateways/012345678912345/devices/0/features/heating.dhw.oneTimeCharge/commands/deactivate","name":"deactivate","isExecutable":false,"params":{}}},"apiVersion":1,"uri":"https://api.viessmann.com/iot/v1/equipment/installations/123456/gateways/012345678912345/devices/0/features/heating.dhw.oneTimeCharge","gatewayId":"012345678912345","feature":"heating.dhw.oneTimeCharge","timestamp":"2022-10-12T07:36:22.751Z","isEnabled":true,"isReady":true,"deviceId":"0"}} {"viErrorId":"req-1da7d25565c74621b30768e6c34af825","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} {"viErrorId":"req-9a0d4c28f42247e089394941c718bdc4","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} {"viErrorId":"req-3aec751d97e342cd8f1d85928ae217cb","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} {"viErrorId":"req-fb596d5fbd0149f4818fa9ba76e3b226","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} {"viErrorId":"req-e56db1e7ad1c4bd98283bb01970cbc6f","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} {"viErrorId":"req-7f9c755f5c4b4312959223de98410bab","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} {"viErrorId":"req-001641c3c78d455ca0a10e6926f48657","statusCode":500,"errorType":"INTERNAL_ERROR","message":"Internal server error"} The syntax checking of the Viessmann server is really strange. Just analyse the last 3 requests. regards hgt
... Mehr anzeigen