Get meter details by address ID
curl --request GET \
--url https://api.voltview.co.uk/v1/meter/lookup/{addressId} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.voltview.co.uk/v1/meter/lookup/{addressId}"
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/meter/lookup/{addressId}', 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/meter/lookup/{addressId}",
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/meter/lookup/{addressId}"
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/meter/lookup/{addressId}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.voltview.co.uk/v1/meter/lookup/{addressId}")
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{
"mpan": "<string>",
"mprn": "<string>",
"address": "<string>",
"postcode": "<string>",
"supplier": "<string>",
"meterSerialNumber": "<string>",
"profileClass": "<string>",
"eac": 123,
"aq": 123
}{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "Invalid request"
}
}Meters
Get meter details by address ID
Retrieve full meter details using the addressId from the postcode search. Returns MPAN/MPRN, supplier info, EAC data, and address details. Requires hasMeterLookup permission.
API key: requires the meters:lookup scope. Your account must have meter lookup enabled.
GET
/
v1
/
meter
/
lookup
/
{addressId}
Get meter details by address ID
curl --request GET \
--url https://api.voltview.co.uk/v1/meter/lookup/{addressId} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.voltview.co.uk/v1/meter/lookup/{addressId}"
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/meter/lookup/{addressId}', 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/meter/lookup/{addressId}",
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/meter/lookup/{addressId}"
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/meter/lookup/{addressId}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.voltview.co.uk/v1/meter/lookup/{addressId}")
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{
"mpan": "<string>",
"mprn": "<string>",
"address": "<string>",
"postcode": "<string>",
"supplier": "<string>",
"meterSerialNumber": "<string>",
"profileClass": "<string>",
"eac": 123,
"aq": 123
}{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "Invalid request"
}
}Authorizations
apiKeyAuthsessionJwt
VoltView API key. Acts as its owner, limited to the key's scopes and sites. Each endpoint lists the scope it needs.
Path Parameters
The addressId from the postcode search results (or direct MPAN/MPRN)
Query Parameters
Fuel type: electricity or gas
Available options:
electricity, gas Response
Meter details retrieved successfully
MPAN for electricity meters (13 digits)
MPRN for gas meters (6-10 digits)
Full address
Postcode
Current energy supplier
Meter serial number
Profile class code
Estimated Annual Consumption in kWh
Annual Quantity for gas meters in kWh