consumption.meters (version 1)
Consumption of up to 10000 EOS meters (energy, water, waste; ids from meters.list) per Oslo-time bucket over [from, to), from the hourly values EOS processed (resets, gaps and virtual meter formulas handled): consumption, the estimated part, cost, missing hours and confidence per bucket, and per meter a total with the peak hour, coverage, cost coverage and hours per confidence tier. Values are consumption per hour, not meter readings: sum them, never take differences. Unit per meter: kWh, L or kg. null means no data, not zero (waste meters: no pickup is 0). For a building's total use consumption.buildings instead of adding meters: sub-meters are part of their parent. from and to must be whole hours; hour buckets up to 62 days, others up to 400, meters × days up to 20000.
bearerAuthorizationBearer <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.
tenantId?stringThe tenant to read. May be left out when the caller belongs to exactly one tenant; GET /me lists them.
uuidapplication/json- body
meterIds*array<>Meter ids (from meters.list), at most 10000
1 <= items <= 10000from*stringStart, inclusive: "YYYY-MM", "YYYY-MM-DD" (Oslo midnight) or ISO 8601 with offset, e.g. "2026-09-01T06:00:00+02:00"
to*stringEnd, exclusive: "YYYY-MM", "YYYY-MM-DD" (Oslo midnight) or ISO 8601 with offset, e.g. "2026-09-01T06:00:00+02:00"
bucket*stringBucket size; weeks start on Monday
"hour""day""week""month"The function output
application/json- response
timeZone*stringbucket*string"hour""day""week""month"from*stringto*stringt*array<string>Bucket starts, Oslo time with offset; index i matches every array
meters*array<>curl -X POST 'https://ai.relynk.io/builder/v1/consumption.meters/v1' \ -H 'Content-Type: application/json' \ -d '{ "meterIds": [ "bc2b2a7d-edc3-42a7-bdac-7a0ea3c64322" ], "from": "string", "to": "string", "bucket": "hour"}'{ "timeZone": "Europe/Oslo", "bucket": "hour", "from": "string", "to": "string", "t": [ "string" ], "meters": [ { "meterId": "string", "name": "string", "carrier": "electricity", "unit": "kWh", "isBuildingMeter": true, "isVirtual": true, "buildingId": "string", "consumption": [ 0 ], "estimated": [ 0 ], "cost": [ 0 ], "missingHours": [ 0 ], "confidence": [ "HIGH" ], "total": { "consumption": 0, "measured": 0, "estimated": 0, "estimatedShare": 0, "cost": 0, "costCoverage": 0, "peak": { "value": 0, "at": "string" }, "expectedHours": 0, "missingHours": 0, "pendingHours": 0, "highHours": 0, "mediumHours": 0, "lowHours": 0, "coverage": 0, "confidence": "HIGH" } } ]}consumption.buildings (version 1) POST
Energy, water and waste consumption of buildings from EOS, exactly as the EOS dashboard shows it: per building and carrier (electricity, heating, cooling, gas, water, waste), the sum of the building's building meters (physical and virtual; sub-meters never), per Oslo-time bucket over [from, to), with cost, estimated share, coverage and confidence per bucket and in total. Use this for any building or portfolio consumption, cost or comparison; never add up raw meter points for that. Values are already consumption per hour (not meter readings), in kWh (energy), L (water) or kg (waste); never add different carriers together. null means no data for the bucket, not zero. Omit buildingIds for every building with EOS data. day, week and month buckets need from and to at Oslo midnight; hour buckets up to 62 days, others up to 1100 days, and buildings × carriers × buckets up to 50000.
For AI agents
Machine-readable docs for AI coding agents and app builders, on this site and on the API host.