RelynkLearn
Builder APIAPI referencePoints

points.timeseries (version 2)

Readings of up to 1000 points aggregated into Oslo-time buckets over [from, to): one shared time axis t and one array per requested metric per point, null where a bucket has no readings. Days, weeks (Monday) and months start at Oslo midnight, so DST days have 23 or 25 hours. Limits: 15m buckets up to 62 days, others up to 400 days, and points × buckets up to 50 000; split longer ranges into several calls.

POST
/points.timeseries/v2

Authorization

bearer
headerAuthorizationBearer <JWT>

A signed-in Relynk user's access token: OAuth 2.0 authorization code with PKCE at https://auth.relynk.io/authorize and https://auth.relynk.io/oauth/token, with audience https://ai.relynk.io/builder. The caller sees exactly what that user may see.

Query Parameters

tenantId?string

The tenant to read. May be left out when the caller belongs to exactly one tenant; GET /me lists them.

Formatuuid

Request Body

application/json
  1. body
pointIds*array<>

Point ids (from points.list), at most 1000

Items1 <= items <= 1000
from*string

Start, inclusive: "YYYY-MM", "YYYY-MM-DD" (Oslo midnight) or ISO 8601 with offset, e.g. "2026-09-01T06:00:00+02:00"

to*string

End, exclusive: "YYYY-MM", "YYYY-MM-DD" (Oslo midnight) or ISO 8601 with offset, e.g. "2026-09-01T06:00:00+02:00"

bucket*string

Bucket size

Value in"15m""hour""day""week""month"
metrics?array<>

Per bucket: avg, min, max, sum, count, and first and last reading

Items1 <= items <= 7
Default
[  "avg"]

Response Body

The function output

application/json
  1. response
timeZone*string
bucket*string
Value in"15m""hour""day""week""month"
from*string

Resolved start, Oslo time with offset

to*string

Resolved end (exclusive), Oslo time with offset

t*array<string>

Bucket starts, Oslo time with offset; index i matches every series array

series*array<>
Example Request
curl -X POST 'https://ai.relynk.io/builder/v1/points.timeseries/v2' \  -H 'Content-Type: application/json' \  -d '{  "pointIds": [    "077ab0e7-997d-450a-aa83-a0ee4c7f1644"  ],  "from": "string",  "to": "string",  "bucket": "15m"}'
Example Response
{  "timeZone": "Europe/Oslo",  "bucket": "15m",  "from": "string",  "to": "string",  "t": [    "string"  ],  "series": [    {      "pointId": "string",      "unitKey": "string",      "avg": [        0      ],      "min": [        0      ],      "max": [        0      ],      "sum": [        0      ],      "count": [        0      ],      "first": [        0      ],      "last": [        0      ]    }  ]}