Skip to main content

Custom Fields API

Released stable version v1 of Custom Fields API.

The Custom Fields API provides a way to define new fields in the Trackunit data model. Allowing to extend and customize Trackunit Manager. In this version 1 we support extending the data model of assets, accounts, groups and sites with new fields.

Below all available endpoints:

To define a custom field, you first need to add a definition using the API.

➕ GET: /custom-fields/v1/definitions

Get definitions

➕ POST: /custom-fields/v1/definitions

Create definition

➕ PATCH: /custom-fields/v1/definitions/{definitionId}

Update definition

➕ DELETE: /custom-fields/v1/definitions/{definitionId}

Delete definition

Use the Custom Fields Values API to set values on your defined custom fields

➕ GET: /custom-fields/v1/values

Get values

➕ POST: /custom-fields/v1/values

Create value

➕ PATCH: /custom-fields/v1/values/{valueId}

Update value

➕ DELETE: /custom-fields/v1/values/{valueId}

Delete value

Webhooks

Released stable support of webhooks.

With the addition of webhooks, we are extending our Iris capabilities to make it easier to set up meaningful workflows by e.g. triggering actions and notifications in external systems that help you run your business. The Trackunit Iris platform collects and stores data about every event that happened to an asset. Via our webhooks technology you can subscribe to relevant event types and get event data served in real-time.

All available event types in this release:

  • alerts.asset.on
  • alerts.asset.off
  • faults.asset.on
  • faults.asset.off
  • service-management.service-status.updated
  • sites.asset.enter
  • sites.asset.leave
  • sites.asset.archive

For more information see our Webhooks guide section.

Alerts API

Released stable version v1 of Alerts API.

Discover the power of our Alerts API, that allows you to manage your alert setup through API integrations. Here alert configurations can be created, read, updated and deleted. For more information see the documentation of the endpoint.

Below all available endpoints:

➕ GET: /alerts/v1/configurations

Get all alert configurations

➕ GET: /alerts/v1/configurations/{alertConfigurationId}

Get specific alert configuration

➕ POST: /alerts/v1/configurations

Create alert configuration

➕ PATCH: /alerts/v1/configurations/{alertConfigurationId}

Update alert configuration

➕ DELETE: /alerts/v1/configurations/{alertConfigurationId}

Delete alert configuration

Emissions API v1 Update

Added new Endpoints to the Emissions API to enable filtering by asset Ids, as well as getting emissions value for sites.

Below is a list of all the new endpoints:

➕ GET: /emissions/period

Get period

➕ POST: /emissions/period

Filter period

➕ GET: /emissions/period/kpis

Get period KPIs

➕ POST: /emissions/period/kpis

Filter period KPIs

➕ POST: /emissions/monthly

Filter monthly

➕ GET: /emissions/monthly/summary

Get monthly summary

➕ POST: /emissions/monthly/summary

Filter monthly summary

➕ POST: /emissions/lifetime

Filter lifetime

➕ GET: /emissions/lifetime/kpis

Get Lifetime KPIs

➕ POST: /emissions/lifetime/kpis

Filter Lifetime KPIs

➕ POST: /emissions/daily

Filter daily

➕ GET: /emissions/daily/summary

Get daily summary

➕ POST: /emissions/daily/summary

Filter daily summary

➕ GET: /emissions/daily/kpis

Get daily KPIs

➕ POST: /emissions/daily/kpis

Filter daily KPIs

➕ GET: /sites/{siteId}/emissions

Get site

Time Series API v1

Released stable version v1 of Time Series API - Supercharge your data exploration with advanced querying capabilities using PromQL!

Discover the power of our new Time Series REST API, your gateway to a wealth of machine insights and advanced sensor data. Designed to empower your exploration of time series data, our new API offers seamless access to endpoints that can be queried using PromQL.

Below a list of all available endpoints:

➕ GET: /time-series/v1/assets/{assetId}/prometheus/api/v1/query

Get for instant queries

➕ POST: /time-series/v1/assets/{assetId}/prometheus/api/v1/query

Post for instant queries

➕ GET: /time-series/v1/assets/{assetId}/prometheus/api/v1/query_range

Get for range queries

➕ POST: /time-series/v1/assets/{assetId}/prometheus/api/v1/query_range

Post for range queries

➕ GET: /time-series/v1/assets/{assetId}/metrics

Get metrics

GraphQL Asset Summary

Released asset summaries in the GraphQL API.

The new assetSummary field supports obtaining unique counts of commonly used asset fields like brand, model, criticality, types, etc. It accepts the same AssetFiltersInput as the assets search field, so they can easily be combined if needed.

➕ GQL: Query.assetSummary

See all relevant GQL documentation

trackunit/ui-icons v0.0.76 - new format for icons

[Breaking change] In this version of our App SDK a new format was introduced for icons, which require an update of jest configurations in extensions that use this library.

Extensions created with @trackunit/iris-app@0.0.366 should already have the required configuration.

Add the following entries to the moduleNameMapper array of jest.config.ts in all relevant libraries.

'@trackunit/ui-icons/icons-sprite-outline.svg': 'jest-transform-stub',
'@trackunit/ui-icons/icons-sprite-solid.svg': 'jest-transform-stub',

The end result should look like the following.

export default {
displayName: 'extension',
preset: '../../jest.preset.js',
transform: {
'^(?!.*\\.(js|jsx|ts|tsx|css|json)$)': '@nx/react/plugins/jest',
'^.+\\.[tj]sx?$': ['babel-jest', { presets: ['@nx/react/babel'] }],
},
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'],
coverageDirectory: '../../coverage/libs/extension',
moduleNameMapper: {
'@trackunit/css-core': 'jest-transform-stub',
'@trackunit/ui-icons/icons-sprite-outline.svg': 'jest-transform-stub',
'@trackunit/ui-icons/icons-sprite-solid.svg': 'jest-transform-stub',
},
};

trackunit/iris-app v0.0.367 - renamed publishApp to submitApp

[Breaking change] In this version of our App SDK we have renamed publishApp to submitApp to avoid confusion about when an app was actually made public. This change means that for existing apps you should open up the project.json file and change:

"publishApp": {
"executor": "@trackunit/iris-app:publish",

To now refer to the submit executor:

"submitApp": {
"executor": "@trackunit/iris-app:submit",