User Electric Vehicles
Get savings data for a specified electric vehicle
Retrieve time-bucketed savings data for a specified electric vehicle within a given date range.
GET
/
api
/
partners
/
v2.0
/
org
/
{org_id}
/
users
/
{user_id}
/
electric-vehicles
/
{electric_vehicle_id}
/
savings
Get savings data for a specified electric vehicle
curl --request GET \
--url https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{electric_vehicle_id}/savings \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{electric_vehicle_id}/savings"
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}/electric-vehicles/{electric_vehicle_id}/savings', 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}/electric-vehicles/{electric_vehicle_id}/savings",
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}/electric-vehicles/{electric_vehicle_id}/savings"
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}/electric-vehicles/{electric_vehicle_id}/savings")
.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}/electric-vehicles/{electric_vehicle_id}/savings")
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 electric vehicle ID
Query Parameters
Start of the date range
End of the date range
Time interval for aggregating data. Supported: 1DAY, 1WEEK, 1MONTH, 1QUARTER, 1YEAR
Was this page helpful?
⌘I
Get savings data for a specified electric vehicle
curl --request GET \
--url https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{electric_vehicle_id}/savings \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{electric_vehicle_id}/savings"
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}/electric-vehicles/{electric_vehicle_id}/savings', 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}/electric-vehicles/{electric_vehicle_id}/savings",
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}/electric-vehicles/{electric_vehicle_id}/savings"
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}/electric-vehicles/{electric_vehicle_id}/savings")
.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}/electric-vehicles/{electric_vehicle_id}/savings")
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
}
}
]
}