Skip to main content

Endpoint

Query historical timeseries data for one or more points. Returns time-value pairs enriched with point metadata from the knowledge graph. For the latest value, use currentValue on the GraphQL Point type instead.
This endpoint uses timeseries IDs from the GraphQL API. First query your building’s points via the point query, then use the returned timeseriesId values to fetch historical data.

Path parameters

Request body

Response

Pagination

REST list endpoints (e.g., /api/v1/sites/) support optional pagination via query parameters: When limit is provided, the response is wrapped in a paginated envelope:
Without limit, the response is a plain array.

Status codes

Examples

cURL

Last 24 hours with 5-minute aggregation

Request
Response

Peak temperatures over a week

Request

Mixed valid and invalid IDs

When some timeseries IDs don’t resolve, the response includes both results and errors:
Request
Response

Time format reference

Relative durations: -1h, -6h, -24h, -7d, -30d ISO-8601 timestamps: 2026-02-01T00:00:00Z Special values: now()

Timezone behaviour

Response timestamps are always in the site’s local timezone, declared in query.timezone. The UTC offset is embedded in every timestamp (e.g., +00:00 for London, +01:00 during BST), so you never need to convert manually. When an aggregation window is specified, all timestamps are snapped to the window boundary. For example, with window: "15m", timestamps align to :00, :15, :30, :45 in the site’s local time. Data is stored in UTC internally. The timezone conversion is applied on output only.

Aggregation windows