Submit command to change schedule of HVAC
curl --request POST \
--url https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"schedules": [
{
"mode": "HEAT",
"start": {
"time": "00:00",
"day": "MONDAY"
},
"temperature": 21.1
}
]
}
'import requests
url = "https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule"
payload = { "schedules": [
{
"mode": "HEAT",
"start": {
"time": "00:00",
"day": "MONDAY"
},
"temperature": 21.1
}
] }
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
schedules: [{mode: 'HEAT', start: {time: '00:00', day: 'MONDAY'}, temperature: 21.1}]
})
};
fetch('https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'schedules' => [
[
'mode' => 'HEAT',
'start' => [
'time' => '00:00',
'day' => 'MONDAY'
],
'temperature' => 21.1
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule"
payload := strings.NewReader("{\n \"schedules\": [\n {\n \"mode\": \"HEAT\",\n \"start\": {\n \"time\": \"00:00\",\n \"day\": \"MONDAY\"\n },\n \"temperature\": 21.1\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"schedules\": [\n {\n \"mode\": \"HEAT\",\n \"start\": {\n \"time\": \"00:00\",\n \"day\": \"MONDAY\"\n },\n \"temperature\": 21.1\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"schedules\": [\n {\n \"mode\": \"HEAT\",\n \"start\": {\n \"time\": \"00:00\",\n \"day\": \"MONDAY\"\n },\n \"temperature\": 21.1\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"createdAt": "2023-11-07T05:31:56Z",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"userId": "896f9d5a-b618-48a2-98ae-957059bf1bc9",
"deviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}HVAC
Submit command to change schedule of HVAC
This endpoint creates an asynchronously executed command request to change schedule of HVAC.
POST
/
v1.0.0
/
hvacs
/
{hvacId}
/
commands
/
schedule
Submit command to change schedule of HVAC
curl --request POST \
--url https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"schedules": [
{
"mode": "HEAT",
"start": {
"time": "00:00",
"day": "MONDAY"
},
"temperature": 21.1
}
]
}
'import requests
url = "https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule"
payload = { "schedules": [
{
"mode": "HEAT",
"start": {
"time": "00:00",
"day": "MONDAY"
},
"temperature": 21.1
}
] }
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
schedules: [{mode: 'HEAT', start: {time: '00:00', day: 'MONDAY'}, temperature: 21.1}]
})
};
fetch('https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'schedules' => [
[
'mode' => 'HEAT',
'start' => [
'time' => '00:00',
'day' => 'MONDAY'
],
'temperature' => 21.1
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule"
payload := strings.NewReader("{\n \"schedules\": [\n {\n \"mode\": \"HEAT\",\n \"start\": {\n \"time\": \"00:00\",\n \"day\": \"MONDAY\"\n },\n \"temperature\": 21.1\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"schedules\": [\n {\n \"mode\": \"HEAT\",\n \"start\": {\n \"time\": \"00:00\",\n \"day\": \"MONDAY\"\n },\n \"temperature\": 21.1\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.energy-hub.io/v1.0.0/hvacs/{hvacId}/commands/schedule")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"schedules\": [\n {\n \"mode\": \"HEAT\",\n \"start\": {\n \"time\": \"00:00\",\n \"day\": \"MONDAY\"\n },\n \"temperature\": 21.1\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"createdAt": "2023-11-07T05:31:56Z",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"userId": "896f9d5a-b618-48a2-98ae-957059bf1bc9",
"deviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}Authorizations
API key used for authorization and authentication.
Path Parameters
HVAC ID
Body
application/json
New schedule to set. UTC expected.
The list of schedule events.
Show child attributes
Show child attributes
Response
Successful operation
The timestamp when command is created.
The ID of the command.
The state of the command.
PENDING- Command is waiting to be executed.FAILED- Execution of command has failed.EXECUTED- Command has been executed successfully.
Available options:
PENDING, EXECUTED, FAILED The name of the command type to execute.
Available options:
SET_TEMPERATURE, SET_MODE, SET_SCHEDULE, POWER_BOOST The ID of the user.
Example:
"896f9d5a-b618-48a2-98ae-957059bf1bc9"
The ID of the vehicle.
⌘I

