Metadata Endpoint
The Metadata endpoint returns descriptive information about time series tags. This may include identifiers across multiple naming domains, data source, unit of measure, scale factor, value ranges, associated vessel, and other contextual attributes. Use this endpoint to understand what a particular time series represents.
curl "https://portal.raalabs.io/{ENVIRONMENT}/metadata/{domain}/{expression}" \
-H "Authorization: Bearer $TOKEN" \
-H "x-api-version: 2026-09-10"import requests
TOKEN = "YOUR_TOKEN"
ENVIRONMENT = "YOUR_ENVIRONMENT"
url = f"https://portal.raalabs.io/{ENVIRONMENT}/metadata/{domain}/{expression}"
headers = {
"Authorization": f"Bearer {TOKEN}",
"x-api-version": "2026-09-10",
}
response = requests.get(url, headers=headers)Request
Path Parameters
domain
The contextual domain for the metadata query (e.g. jsmea, raalabs, id, vis-3-8a).
expression
The domain-specific query expression used to select which time series metadata to return. This can be a specific path or include wildcards (*) to retrieve multiple tags. In many domains, the expression begins with the vessel’s IMO number.
Query Parameters
Format Parameter:
format(string): Desired output format of the metadata. Options are:json(default): JSON array response.ndjson: Newline-delimited JSON, suitable for streaming large results.
Verbose Parameter:
verbose(boolean): Some domains offer more human-readable, verbose domainIds. This parameter allows you to toggle verbose domainIds on and off. If the domain does not distinguish between verbose and regular IDs, this parameter does not have any effect.false(default): response includes regular domainIdstrue: response includes verbose domainIds
Response
If the query is valid, the response will include metadata for all matching time series. The response structure depends on the chosen format. Common among all of them is the individual metadata object, which contains the following attributes:
Top-level fields:
id– The ID for the time series, according to the chosen domain in the request.timeSeriesId– A unique UUID for the time series (internal identifier).source– Source system or origin of the data (e.g., sensor or system name).dataProvider– The data provider responsible for the time series.unitOfMeasure– Unit of measure for the values (e.g.,barfor pressure,°Cfor temperature).scale– Scaling factor applied to the raw data.
Vessel object:
vessel.name– The name of the vessel the data is associated with.vessel.imo– The IMO number of the vessel.
Domains object:
The domains object maps the time series across different naming domains. Each key represents a domain and contains the ID of the time series within that domain, along with domain-specific metadata.
Available domains (a time series may not include all):
id– Uses the unique timeSeriesId as identifier.jsmea– JSMEA domain naming with the hierarchical levels as separate fields:namingRule,category,subcategory,content,position,item, andsuffix.maker– Includesname,description,rangeHigh, andrangeLow, specified by the maker of the machinery or equipment. The range fields specify the expected minimum and maximum values for the measurement.raalabs– Raa Labs naming convention withidandshortName.vis-3-8a– VIS 3-8a domain naming withcodesof theprimaryItemandsecondaryItem. Each code can have a location specified by:number,side,vertical,transverse,longitudinal. It also includestypeandcategoryfor themetadatatags.
Note that not all fields are present for every time series.
Formats
For format=json (the default), the response is an array of metadata objects.
Example JSON metadata response:
For format=ndjson (Newline-Delimited JSON), the response contains one JSON metadata object per line, instead of a single array. This format is useful for streaming large result sets where each line can be processed independently. The content of each JSON object is identical to the regular JSON format.
Example NDJSON response (two lines, each a separate JSON metadata object):
Examples
Retrieve Metadata for a Single Vessel
This request returns a JSON array containing metadata objects for all time series associated with vessel IMO 1234567, using the Raa Labs domain naming convention. The trailing wildcard (*) selects all tags for the vessel.
Retrieve Metadata for Entire Fleet
This request returns metadata for all accessible time series across all vessels, using the Raa Labs domain naming convention. This is achieved by using a wildcard (*) in the IMO position of the expression.
Filtered Metadata Query (e.g., main engine tags)
This request returns metadata for all Main Engine-related time series across all vessels, using the JSMEA domain naming convention. The wildcard in the IMO position selects all vessels, while the remaining expression path filters results to time series under the jsmea_mac engine and machinery naming rule with the MainEngine category.
Last updated
Was this helpful?