User Heat Pumps
Get statistics for a specified heat pump
Retrieve savings and consumption data for a specified heat pump, allowing filtering by keywords and aggregation by various time resolutions. This endpoint is currently in Alpha release and should only be used for testing.
GET
/
api
/
partners
/
v2.0
/
org
/
{org_id}
/
users
/
{user_id}
/
heat-pumps
/
{heat_pump_id}
/
statistics
Get statistics for a specified heat pump
curl --request GET \
--url https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics', 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.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"metadata": {
"requested_at": "<string>",
"query": {},
"units": {},
"error": "<string>"
},
"data": [
{
"resolution": "<string>",
"period": {
"start_period": "<string>",
"end_period": "<string>"
},
"savings": {
"total": 123,
"percentage": 123
},
"consumption": {
"total": 123
},
"heat_pump": {
"estimated_consumption_wh": 123
},
"electric_vehicle": {
"estimated_consumption_wh": 123,
"charge_session_count": 123,
"average_charge_power_w": 123
},
"inverter": {
"solar_production_wh": 123,
"grid_export_wh": 123,
"end_user_opportunity_cost": 123
}
}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
The organization ID
The user ID
The heat pump ID
Query Parameters
The time interval for aggregating data. Comma Seperated list. Supported values: 1DAY, 1WEEK, 1MONTH, 1QUARTER, 1YEAR
A comma-separated list of keywords. Supported values: savings, consumption
Was this page helpful?
⌘I
Get statistics for a specified heat pump
curl --request GET \
--url https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics', 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.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}/statistics")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"metadata": {
"requested_at": "<string>",
"query": {},
"units": {},
"error": "<string>"
},
"data": [
{
"resolution": "<string>",
"period": {
"start_period": "<string>",
"end_period": "<string>"
},
"savings": {
"total": 123,
"percentage": 123
},
"consumption": {
"total": 123
},
"heat_pump": {
"estimated_consumption_wh": 123
},
"electric_vehicle": {
"estimated_consumption_wh": 123,
"charge_session_count": 123,
"average_charge_power_w": 123
},
"inverter": {
"solar_production_wh": 123,
"grid_export_wh": 123,
"end_user_opportunity_cost": 123
}
}
]
}