Load curve for all sites
curl --request GET \
--url https://api.voltview.co.uk/v1/sites/loadCurve \
--header 'x-api-key: <api-key>'import requests
url = "https://api.voltview.co.uk/v1/sites/loadCurve"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.voltview.co.uk/v1/sites/loadCurve', 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.voltview.co.uk/v1/sites/loadCurve",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://api.voltview.co.uk/v1/sites/loadCurve"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.voltview.co.uk/v1/sites/loadCurve")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.voltview.co.uk/v1/sites/loadCurve")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"siteId": "<string>",
"data": [
{
"timestamp": "2023-11-07T05:31:56Z",
"value": 123,
"unit": "<string>"
}
]
}
]{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "Invalid request"
}
}Energy Consumption
Load curve for all sites
Retrieves load curve data across all sites
API key: requires the consumption:read scope.
GET
/
v1
/
sites
/
loadCurve
Load curve for all sites
curl --request GET \
--url https://api.voltview.co.uk/v1/sites/loadCurve \
--header 'x-api-key: <api-key>'import requests
url = "https://api.voltview.co.uk/v1/sites/loadCurve"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.voltview.co.uk/v1/sites/loadCurve', 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.voltview.co.uk/v1/sites/loadCurve",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://api.voltview.co.uk/v1/sites/loadCurve"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.voltview.co.uk/v1/sites/loadCurve")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.voltview.co.uk/v1/sites/loadCurve")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"siteId": "<string>",
"data": [
{
"timestamp": "2023-11-07T05:31:56Z",
"value": 123,
"unit": "<string>"
}
]
}
]{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "Invalid request"
}
}Each point is interval consumption (kWh) or demand (kW) on the settlement clock. Site curves are not coincident; do not add peaks across sites and call that the portfolio peak.
Authorizations
apiKeyAuthsessionJwt
VoltView API key. Acts as its owner, limited to the key's scopes and sites. Each endpoint lists the scope it needs.
Query Parameters
Start date and time (ISO 8601)
Example:
"2024-01-01T00:00:00.000Z"
End date and time (ISO 8601)
Example:
"2024-12-31T23:59:59.999Z"
Level of data aggregation
Available options:
hour, day, month