> For the complete documentation index, see [llms.txt](https://docs.raalabs.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.raalabs.io/getting-started/changelog/updates.md).

# Updates

{% updates format="full" %}
{% update date="2026-08-06" tags="new-feature" %}

## Partial edge windows for statistics

* The `/statistics` endpoint now accepts a `window_edges` query parameter, which controls what happens to the windows at each end of the query time range. With `whole` (the default, and the previous behavior) the range is expanded to whole windows, and the leading partial window is dropped and the trailing window is returned in full. With `partial` the query range is used exactly as given, and the windows at each end are returned as partial windows. The parameter is ignored when `window = none`. This is available in both API versions `2025-10-31` and `2026-01-01-beta`.
  {% endupdate %}

{% update date="2026-08-05" tags="bug-fix" %}

## Maker domain range values now consistently returned as floats

* In API version `2026-01-01-beta`, the `rangeLow` and `rangeHigh` fields of the `maker` domain in the `/metadata` response were returned as integers when the value had no decimal part, for example `200`. They are now consistently returned as floating point numbers, for example `200.0`, matching the behavior of API version `2025-10-31`.
  {% endupdate %}

{% update date="2026-05-18" tags="new-feature" %}

## NDJSON response format for metadata

* The `/metadata` endpoint now supports `ndjson` output, in addition to `json`. Use `format=ndjson` as query parameter, or set the `Accept: application/x-ndjson` header. This is available only in API version `2026-01-01-beta`.
  {% endupdate %}

{% update date="2026-05-11" tags="bug-fix" %}

## Return status code `406` for unsupported response formats

* Requests to API endpoints with an unsupported response format now return a `406 Not Acceptable` error, instead of `500 Internal Server Error`. For example, requesting `format=html` on `/measurements`, or `format=csv` on `/metadata`, will now return a `406` response.
  {% endupdate %}

{% update date="2026-04-28" %}

## Statistics endpoint: fix and clarify window alignment behavior

* Fixed inconsistent behavior in the `/statistics` endpoint (API version `2025-10-31`) for boundary aggregation windows when windows were not aligned with the query range.
* Updated documentation to clarify the behavior.
  {% endupdate %}

{% update date="2026-04-16" tags="experimental-feature" %}

## CSV and HTML response formats for statistics

* The `/statistics` endpoint now supports `csv` and `html` output formats, in addition to `json` and `ndjson`. Use `format=csv` or `format=html` as query parameter. This feature is in experimental state.
  {% endupdate %}

{% update date="2026-04-08" %}

## Python code samples

* This documentation now includes Python code samples for all API endpoints and examples.
  {% endupdate %}

{% update date="2026-03-20" tags="new-feature" %}

## Delta aggregation support for statistics

* The `/statistics` endpoint now supports the `delta` aggregation, which computes the difference between the last and first value (`last_val - first_val`) within the aggregation window.
  {% endupdate %}

{% update date="2026-03-18" tags="new-feature,bug-fix" %}

## JSON data type aggregations, timestamp normalization, and trailing comma fix

* The `/statistics` endpoint now supports the following aggregations for the `JSON` data type:
  * `count`
  * `last_val`
  * `first_val`
  * `last_time`
  * `first_time`
* The `timestamp` field in API responses has been normalized to always include microsecond precision, sample `timestamp`: `2024-12-04T21:00:00.000000Z`
* Requests to `/statistics` using API version `2026-01-01-beta` occasionally returned trailing commas in the JSON response, this has been fixed.
  {% endupdate %}

{% update date="2026-03-16" %}

## Documentation host updated to `portal.raalabs.io`

* This API documentation has been updated to use `portal.raalabs.io` as host for all examples. `prism.raalabs.io` continues to be accessible.
  {% endupdate %}

{% update date="2026-02-20" tags="new-feature" %}

## Multi-parameter queries and arbitrary time window aggregation

* The `parameters` domain now supports querying multiple parameters with the `{}`-syntax in a single `GET` request.
* The `/statistics` HTTP endpoint now supports calculating aggregates over an arbitrary time window, returning one window with one value per aggregation across the whole time range requested.
  {% endupdate %}

{% update date="2026-01-22" tags="new-feature" %}

## `mapsTo` field now includes id domainIds

* The `mapsTo` field in the response to `/metadata` now contains the `id` domainIds.
  {% endupdate %}

{% update date="2026-01-15" tags="bug-fix" %}

## Trailing comma fix in measurements and statistics responses

* This update fixes a bug where in some cases `/measurements` and `/statistics` returned a trailing comma after the last JSON element within the array, which can cause errors in JSON parsing.
  {% endupdate %}

{% update date="2025-12-10" tags="bug-fix" %}

## Accept both aggregation and aggregations query parameter

* Both `aggregations` and `aggregation` are accepted as query parameter name for the `/statistics` endpoint. Previously, only `aggregations` was accepted, and using for example `aggregation=count` would not be recognised as the query parameter, and the API would return the default aggregation of `avg` instead.
  {% endupdate %}

{% update date="2025-12-09" tags="new-feature" %}

## Verbose domainIds query parameter

* All three endpoints `/metadata`, `/measurements` and `/statistics` now accept a `verbose` query parameter. This is a flag to toggle on verbose domainIds. Some domains offer more human-friendly, verbose domainIds; if `verbose` is set to `true`, the domainIds in the response will be verbose. Below is an example of a verbose versus regular domainId within the `vis-3-8a` domain:
  * regular: `IMO1234567/411.1/C101.31-6/meta/qty-temperature/cnt-coolant/pos-outlet`
  * verbose: `IMO1234567/411.1/C101.31-6/~propulsion.engine/~cylinder.6/meta/qty-temperature/cnt-coolant/pos-outlet`
    {% endupdate %}

{% update date="2025-11-19" tags="new-feature" %}

## VIS 3-8a domain support

* Added general support for the `vis-3-8a` domain. Queries can now be done using `vis-3-8a` domainIds, see the relevant section in the docs here: [vis 3-8a domain](/docs/supported-domains.md#the-vis-3-8a-domain). Note that the availability of domainIds is subject to time series contextualization, which happens independent of the API development.
  {% endupdate %}

{% update date="2025-11-17" tags="bug-fix,new-feature" %}

## JSMEA POST improvements and Content-Type error handling

* `POST` requests for `/measurements` and `/statistics` using the JSMEA domain now support tags with empty hierarchy levels within the `POST` body.
* `POST` requests without the `Content-Type` header now return a more appropriate `Unsupported Media Type` error message. `application/json` is the only allowed value for the header.
  {% endupdate %}

{% update date="2025-11-06" tags="new-feature" %}

## `mapsTo` field now includes maker domainIds

* The `mapsTo` field in the response to `/metadata` now contains `maker` domainIds.
  {% endupdate %}
  {% endupdates %}
