curl --request POST \
--url https://api.anysite.io/api/eprel/products \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"registration_number": "<string>",
"timeout": 300
}
'import requests
url = "https://api.anysite.io/api/eprel/products"
payload = {
"registration_number": "<string>",
"timeout": 300
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({registration_number: '<string>', timeout: 300})
};
fetch('https://api.anysite.io/api/eprel/products', 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.anysite.io/api/eprel/products",
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([
'registration_number' => '<string>',
'timeout' => 300
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <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.anysite.io/api/eprel/products"
payload := strings.NewReader("{\n \"registration_number\": \"<string>\",\n \"timeout\": 300\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<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.anysite.io/api/eprel/products")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"registration_number\": \"<string>\",\n \"timeout\": 300\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/eprel/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"registration_number\": \"<string>\",\n \"timeout\": 300\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"product_group": "<string>",
"@type": "EprelProduct",
"model_identifier": "<string>",
"supplier": "<string>",
"energy_class": "<string>",
"energy_class_range": "<string>",
"energy_label_id": "<string>",
"implementing_act": "<string>",
"status": "<string>",
"form_type": "<string>",
"registrant_nature": "<string>",
"is_blocked": true,
"is_last_version": true,
"is_visible_to_uk_msa": true,
"has_generated_label": true,
"uploaded_labels": [],
"version_id": "<string>",
"version_number": 123,
"product_model_core_id": "<string>",
"trademark_id": "<string>",
"trademark_owner": "<string>",
"trademark_verification_status": "<string>",
"organisation_verification_status": "<string>",
"availability_in_eu_eea_countries": "<string>",
"available_in_countries": [],
"available_in_eu_eea_countries": [],
"available_in_other_countries": [],
"on_market_start_at": 123,
"on_market_end_at": 123,
"on_market_first_start_at": 123,
"first_published_at": 123,
"published_at": 123,
"exported_at": 123,
"imported_at": 123,
"contact_id": "<string>",
"contact": {
"@type": "EprelContact",
"id": "<string>",
"service_name": "<string>",
"email": "<string>",
"phone": "<string>",
"web_url": "<string>",
"street": "<string>",
"street_number": "<string>",
"address_block": "<string>",
"postal_code": "<string>",
"city": "<string>",
"municipality": "<string>",
"province": "<string>",
"country": "<string>",
"status": "<string>",
"order_number": 123,
"is_default": true,
"is_specific": true,
"contact_reference": "<string>",
"contact_by_reference_id": "<string>"
},
"organisation": {
"@type": "EprelOrganisation",
"id": "<string>",
"name": "<string>",
"display_name": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"person_type": "<string>",
"web_url": "<string>",
"is_closed": true,
"close_status": "<string>",
"closed_at": 123
},
"additional_infos": [],
"attributes": {}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/eprel/products
Look up one model in EPREL, the EU register every product carrying an EU energy label must be entered into, by its registration number and product group. Returns the energy class and the scale it is measured on, the model identifier and supplier or trademark, the registration status and version, on-market start and end dates, the countries the model is declared available in, the supplier’s registered organisation and contact address, any supplier notes, and the full technical record the group’s regulation requires — compartment volumes, dimensions, noise, consumption, tyre grip and rolling-noise classes, panel technology, and so on, under the field names the registry publishes.
Price: 1 credit
⚠️ Common errors: 412: No model with that registration number is registered under that product group.
curl --request POST \
--url https://api.anysite.io/api/eprel/products \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"registration_number": "<string>",
"timeout": 300
}
'import requests
url = "https://api.anysite.io/api/eprel/products"
payload = {
"registration_number": "<string>",
"timeout": 300
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({registration_number: '<string>', timeout: 300})
};
fetch('https://api.anysite.io/api/eprel/products', 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.anysite.io/api/eprel/products",
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([
'registration_number' => '<string>',
'timeout' => 300
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <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.anysite.io/api/eprel/products"
payload := strings.NewReader("{\n \"registration_number\": \"<string>\",\n \"timeout\": 300\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<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.anysite.io/api/eprel/products")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"registration_number\": \"<string>\",\n \"timeout\": 300\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/eprel/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"registration_number\": \"<string>\",\n \"timeout\": 300\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"product_group": "<string>",
"@type": "EprelProduct",
"model_identifier": "<string>",
"supplier": "<string>",
"energy_class": "<string>",
"energy_class_range": "<string>",
"energy_label_id": "<string>",
"implementing_act": "<string>",
"status": "<string>",
"form_type": "<string>",
"registrant_nature": "<string>",
"is_blocked": true,
"is_last_version": true,
"is_visible_to_uk_msa": true,
"has_generated_label": true,
"uploaded_labels": [],
"version_id": "<string>",
"version_number": 123,
"product_model_core_id": "<string>",
"trademark_id": "<string>",
"trademark_owner": "<string>",
"trademark_verification_status": "<string>",
"organisation_verification_status": "<string>",
"availability_in_eu_eea_countries": "<string>",
"available_in_countries": [],
"available_in_eu_eea_countries": [],
"available_in_other_countries": [],
"on_market_start_at": 123,
"on_market_end_at": 123,
"on_market_first_start_at": 123,
"first_published_at": 123,
"published_at": 123,
"exported_at": 123,
"imported_at": 123,
"contact_id": "<string>",
"contact": {
"@type": "EprelContact",
"id": "<string>",
"service_name": "<string>",
"email": "<string>",
"phone": "<string>",
"web_url": "<string>",
"street": "<string>",
"street_number": "<string>",
"address_block": "<string>",
"postal_code": "<string>",
"city": "<string>",
"municipality": "<string>",
"province": "<string>",
"country": "<string>",
"status": "<string>",
"order_number": 123,
"is_default": true,
"is_specific": true,
"contact_reference": "<string>",
"contact_by_reference_id": "<string>"
},
"organisation": {
"@type": "EprelOrganisation",
"id": "<string>",
"name": "<string>",
"display_name": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"person_type": "<string>",
"web_url": "<string>",
"is_closed": true,
"close_status": "<string>",
"closed_at": 123
},
"additional_infos": [],
"attributes": {}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
airconditioners, dishwashers, dishwashers2019, electronicdisplays, hotwaterstoragetanks, lamps, lightsources, localspaceheaters, ovens, professionalrefrigeratedstoragecabinets, rangehoods, refrigeratingappliances, refrigeratingappliances2019, refrigeratingappliancesdirectsalesfunction, residentialventilationunits, smartphonestablets20231669, solidfuelboilerpackages, solidfuelboilers, spaceheaterpackages, spaceheaters, spaceheatersolardevice, spaceheatertemperaturecontrol, televisions, tumbledriers, tumbledryers20232534, tyres, washerdriers, washerdriers2019, washingmachines, washingmachines2019, waterheaterpackages, waterheaters, waterheatersolardevices 120 <= x <= 1500Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes