curl --request GET \
--url https://api.nox.energy/v1/households \
--header 'x-api-key: <api-key>'import requests
url = "https://api.nox.energy/v1/households"
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.nox.energy/v1/households', 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.nox.energy/v1/households",
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.nox.energy/v1/households"
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.nox.energy/v1/households")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nox.energy/v1/households")
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{
"data": [
{
"household_id": "8f14e45f-ceea-467a-9575-6c1b1f1e7c2a",
"user_id": "1234",
"grid_metering": true,
"devices": [
{
"device_id": "a87ff679-a2f3-4e1d-8c6b-2b1e0f9d8c7a",
"asset_type": "pv"
},
{
"device_id": "e4da3b7f-bbce-4a45-9d2b-1c0e8f7a6b5c",
"asset_type": "battery"
},
{
"device_id": "1679091c-5a88-4c2f-8e1d-3b2a0f9e8d7c",
"asset_type": "battery"
},
{
"device_id": "0910947a-fab9-450e-b5ac-48e9c4f3e725",
"asset_type": "heat_pump"
}
]
}
],
"meta": {
"energy_supplier": "Energy Supplier A"
}
}{
"detail": "Energy Supplier A is not authorized to access this feature."
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "This endpoint is not available yet."
}Get Households
Preview: not available yet. This endpoint is documented ahead of its release and currently
answers 501 Not Implemented. Its contract may still change before release.
Get the households of your users and the NOX-connected devices in them.
A household is a house and all the devices connected in it, behind its grid connection. It adds no
identity to its devices: the device_ids are the same ones the heat pump, pv and battery device
endpoints return.
curl --request GET \
--url https://api.nox.energy/v1/households \
--header 'x-api-key: <api-key>'import requests
url = "https://api.nox.energy/v1/households"
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.nox.energy/v1/households', 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.nox.energy/v1/households",
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.nox.energy/v1/households"
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.nox.energy/v1/households")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nox.energy/v1/households")
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{
"data": [
{
"household_id": "8f14e45f-ceea-467a-9575-6c1b1f1e7c2a",
"user_id": "1234",
"grid_metering": true,
"devices": [
{
"device_id": "a87ff679-a2f3-4e1d-8c6b-2b1e0f9d8c7a",
"asset_type": "pv"
},
{
"device_id": "e4da3b7f-bbce-4a45-9d2b-1c0e8f7a6b5c",
"asset_type": "battery"
},
{
"device_id": "1679091c-5a88-4c2f-8e1d-3b2a0f9e8d7c",
"asset_type": "battery"
},
{
"device_id": "0910947a-fab9-450e-b5ac-48e9c4f3e725",
"asset_type": "heat_pump"
}
]
}
],
"meta": {
"energy_supplier": "Energy Supplier A"
}
}{
"detail": "Energy Supplier A is not authorized to access this feature."
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "This endpoint is not available yet."
}Authorizations
API Key authentication. Enter your API key in the format: YOUR_API_KEY
Query Parameters
The maximum number of items to return per page of results.
This should be used together with the next_token parameter to paginate through results.
Read the pagination parameter documentation for more details.
1 <= x <= 1000The next_token is a token used to retrieve the next page of results when there are more results
than can fit in a single page(=API response).
By default, the API will return a next_token of the first page if no token was given as a parameter.
If the token is null you have reached the end of the results.
This should be used together with the limit parameter to paginate through results.
To get all results of your call, you can keep calling the same API call with the previously returned next_token until it returns null.
The ID of the household to filter on. If not provided, all households are returned.
Your own ID of the user to filter on: the ID you use internally for this user, whether you are an energy supplier, an OEM or another partner. If not provided, all users are returned.