OrdinateDB

Documentation

product Pre-releaseunwritten sections are marked
GET/v1/series/{uuid}/rollups

Read stored rollup rows

operation ID: get_v1_series_by_uuid_rollups

Overview

Read stored rollup rows. Series-storage operations expose registered series, direct stored data, gap and chunk metadata, and lifecycle controls.

When to use it

  • Use it when an application needs to read stored rollup rows.
  • Use it when a diagnostic or maintenance tool needs storage-level series data instead of model-resolved attributes.

Quick example

Set the base URL and replace generated identifiers or credentials with values from your installation.

cURL

curl --request GET \
  --url "$ORDINATE_URL/v1/series/00000000-0000-4000-8000-000000000001/rollups?tier=1h&start_ns=0&end_ns=0" \
  --header "Authorization: Bearer $ORDINATE_TOKEN"

Expected output · 200

Raw rollup rows; percent_good is the stored 0-1 fraction

Example 200 output

{
  "rows": [
    {
      "window_start_ns": 0,
      "count": 0,
      "min": 0,
      "max": 0,
      "sum": 0,
      "tw_sum_linear": 0,
      "tw_sum_stepped": 0,
      "first": 0,
      "last": 0,
      "good_time_ns": 0,
      "percent_good": 0,
      "finalised_at_ns": 0
    }
  ]
}

The cURL request supplies the documented path and query values and asks OrdinateDB to read stored rollup rows. The documented 200 response is raw rollup rows; percent_good is the stored 0-1 fraction.

How it works

These routes address a stable series UUID directly. Use resolved-read routes when an application should follow model bindings across time.

Reference

Required capability
read
Authorization scope
owning asset of series path parameter `uuid`, or staging-root

Parameters

NameInRequiredType and constraints
uuidpathyes
stringformat: uuid
tierqueryyes
string

values: 1h · 1d

start_nsqueryyes
integer

UTC Unix timestamp in nanoseconds

format: int64
end_nsqueryyes
integer

UTC Unix timestamp in nanoseconds

format: int64

Request body

This operation has no request body.

Responses

200Raw rollup rows; percent_good is the stored 0-1 fraction

application/json

rowsarrayrequired

array

countintegerrequired
format: int64
finalised_at_nsany ofrequired

any of

option 1

integer

UTC Unix timestamp in nanoseconds

format: int64

option 2

null
firstany ofrequired

any of

option 1

numberformat: double

option 2

null
good_time_nsintegerrequired
format: int64
lastany ofrequired

any of

option 1

numberformat: double

option 2

null
maxany ofrequired

any of

option 1

numberformat: double

option 2

null
minany ofrequired

any of

option 1

numberformat: double

option 2

null
percent_goodnumberrequired
format: double
sumany ofrequired

any of

option 1

numberformat: double

option 2

null
tw_sum_linearnumberrequired
format: double
tw_sum_steppednumberrequired
format: double
window_start_nsintegerrequired

UTC Unix timestamp in nanoseconds

format: int64
unknown fields rejected
unknown fields rejected

Example 200 output

{
  "rows": [
    {
      "window_start_ns": 0,
      "count": 0,
      "min": 0,
      "max": 0,
      "sum": 0,
      "tw_sum_linear": 0,
      "tw_sum_stepped": 0,
      "first": 0,
      "last": 0,
      "good_time_ns": 0,
      "percent_good": 0,
      "finalised_at_ns": 0
    }
  ]
}
400Invalid UUID, tier, or range

application/json

ErrorEnvelope
codestringrequired
correlation_idstringrequired
format: uuid
detailsobjectoptional
errorstringrequired

Example 400 output

{
  "error": "string",
  "code": "account-sealed",
  "correlation_id": "00000000-0000-4000-8000-000000000001"
}

text/plain

string
401Authentication required

application/json

ErrorEnvelope
codestringrequired
correlation_idstringrequired
format: uuid
detailsobjectoptional
errorstringrequired

Example 401 output

{
  "error": "string",
  "code": "account-sealed",
  "correlation_id": "00000000-0000-4000-8000-000000000001"
}
403Read capability is not granted

application/json

ErrorEnvelope
codestringrequired
correlation_idstringrequired
format: uuid
detailsobjectoptional
errorstringrequired

Example 403 output

{
  "error": "string",
  "code": "account-sealed",
  "correlation_id": "00000000-0000-4000-8000-000000000001"
}

Code examples

These examples are generated from the source contract. Replace the base URL, credentials, identifiers, and minimal generated values for your instance.

JavaScript

const ordinateUrl = "http://localhost:8080";
const token = "<bearer-token>";

const response = await fetch(`${ordinateUrl}/v1/series/00000000-0000-4000-8000-000000000001/rollups?tier=1h&start_ns=0&end_ns=0`, {
  method: "GET",
  headers: {
    Authorization: `Bearer ${token}`
  }
});

if (!response.ok) {
  throw new Error(`OrdinateDB returned ${response.status}: ${await response.text()}`);
}

const data = await response.json();
console.log(data);