Read the current values
const url = 'https://example.com/v1/buildings/example/points/values';const options = {method: 'GET', headers: {'X-Api-Key': '<X-Api-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/v1/buildings/example/points/values \ --header 'X-Api-Key: <X-Api-Key>'The latest reading of each requested point. Every requested point appears in readings or in unavailable, with a reason.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
The object id of the building: its register identification in dotted form, e.g. nl.bag.pand.0014100040022681.
Query Parameters
Section titled “Query Parameters”Only these points; default the whole building. A comma-separated list (a,b) or the parameter repeated; at least one id.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
An ISO 8601 duration such as PT15M: older readings move to unavailable with reason too_stale. Default: any age.
Responses
Section titled “Responses”The readings.
Response of GET /v1/buildings/{building_id}/points/values. Every requested point appears in exactly one of the two arrays.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Stable address of a point, for example 9b41d0aa.
RFC 3339 timestamp.
Matches the point’s value_type.
object
Stable address of a point, for example 9b41d0aa.
Example
{ "readings": [ { "quality": "ok" } ], "unavailable": [ { "reason": "no_data" } ]}Response of GET /v1/buildings/{building_id}/points/values. Every requested point appears in exactly one of the two arrays.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Stable address of a point, for example 9b41d0aa.
RFC 3339 timestamp.
Matches the point’s value_type.
object
Stable address of a point, for example 9b41d0aa.
Example
{ "readings": [ { "quality": "ok" } ], "unavailable": [ { "reason": "no_data" } ]}invalid_request, or a write the backend refuses as a whole (point_not_writable, value_out_of_range, …).
Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}unauthenticated: no or a wrong key.
Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}forbidden: the key may not use this building.
Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}building_not_found, or not_found for an unknown route.
Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}upstream_unavailable: the building’s systems cannot be reached; retryable.
Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}Body of every 4xx and 5xx response. building_id is present when the request addressed a building.
object
Protocol version, carried by every response.
Object id of the building: the register identification in dotted form, for example nl.bag.pand.0014100040022681.
object
Invalid_request, unauthenticated, building_not_found, point_not_writable, value_out_of_range, unit_mismatch, rate_limited and upstream_unavailable come from the proposal. forbidden, point_not_found, type_mismatch, target_not_found, command_not_supported, expired, not_found and internal are extensions. Clients must accept unknown codes.
Which field caused it, for example setpoints[0].value.
ISO 8601 duration with exact units only (W, D, H, M, S), for example PT15M.
Example
{ "error": { "code": "invalid_request" }}