For the complete documentation index, see llms.txt. This page is also available as Markdown.

Updates

New releaseStable

Stable release of API version 2026-09-10

  • API version 2026-09-10 is now available. It is the stable release of the response formats that were developed under 2026-01-01-beta, and the two versions are identical, so moving over from the beta only requires changing the x-api-version header.

  • See the full release details and migration guide here: 2026-09-10

  • 2026-01-01-beta remains callable, and continues to return the same responses as 2026-09-10.

  • Omitting the x-api-version header targets the default version, which is unchanged by this release.

  • Version 2025-10-31 is supported until 2027-03-10, six months from this release, and is deactivated after that date.

BetaNew feature

Merged statistics for shared domain ids, and timeSeriesId removed in 2026-01-01-beta version

  • The /statistics endpoint now returns a single result per time window and id in API version 2026-01-01-beta. Where several time series resolve to the same id (based on chosen output_domain), their aggregations are merged into one result covering the data points of all of those time series.

  • The domainId field has been renamed to id in /measurements and /statistics responses in API version 2026-01-01-beta, it contains the same values as before.

  • The timeSeriesId field has been removed from the /measurements and /statistics responses in API version 2026-01-01-beta, in every response format. Rows are identified by id alone, and the /measurements parquet schema now carries a single id column in place of time_series_id and domain_id, which makes it identical to the one in 2025-10-31.

New feature

Output domain for measurements and statistics

  • The /measurements and /statistics endpoints now accept an output_domain query parameter, which names the results in that domain instead of the domain that was queried. For example, query the raalabs domain with output_domain=jsmea to select time series by their flat Raa Labs tag name and get JSMEA names back. A time series that has no name in the requested output domain is left out of the response. This is available in both API versions 2025-10-31 and 2026-09-10.

New feature

MCP server documentation

  • The documentation now covers the Raa Labs MCP server, which exposes vessel time series data to AI agents over the Model Context Protocol. See the MCP Server page for how to connect a client.

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-09-10.

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.

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-09-10.

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.

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.

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.

Python code samples

  • This documentation now includes Python code samples for all API endpoints and examples.

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.

New featureBug 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.

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.

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.

New feature

mapsTo field now includes id domainIds

  • The mapsTo field in the response to /metadata now contains the id domainIds.

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.

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.

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

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. Note that the availability of domainIds is subject to time series contextualization, which happens independent of the API development.

Bug fixNew 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.

New feature

mapsTo field now includes maker domainIds

  • The mapsTo field in the response to /metadata now contains maker domainIds.

Last updated

Was this helpful?