Integration principles

The integration API provides an easy way to interact in 3 different ways with the platform: perform management tasks, retrieve data from the platform with a pull or push mechanism and inject third party data into the platform

The Sensolus platform can be interacted with using an API (Application Programming Interface), allowing integration with other systems.

Depending on your needs, you can automatically sync data with webhooks or manually pull data according to your needs.

We also offer the possibility to enrich the Sensolus platform with your own data by injecting different data sources

Common reasons to integrate with your own systems are:

  • Uniformity: combine information of different sources
  • Enrich data: more information, more insights
  • Share data via systems used by your employees, clients,…
  • Process data: create your own dashboards, get custom insights

Take a look at the video to learn about API integrations

Management API

Management tasks follow the general principles of a REST based API. All managed entities can be treated as resources which can be created, updated and deleted in a uniform way. Examples of administrative tasks include:
  • Configuring a tracker with its name, tags, third-party ID, image, icon, etc..
  • Creating a geozone
  • Creating an alert rule
  • Creating geobeacons
  • Creating a third-party data channel
  • Creating a webhook

Data push/pull API

The platform data is split in different categories:
  • Time series data: the most low-level observations like coordinates, signal RSSI, matching geo-zones, …. A timeseries element Is fundamentally an entity with a timestamp, a metric type and a value.
  • Aggregated data: low level data can be combined or aggregated into more useful pieces of information. An aggregated location message will contain the coordinates, the source, the trigger of the measurement and other information. An aggregated data element can be directly related to one or more device messages, but is often enriched with contextual data not included in the message: e.g. geozone or address.
  • Alerts: alerts can be triggered by device messages or platform timers. Historical alerts may be fetched with the pull API, but they are obviously much more suited to being pushed and reacted upon.

Depending on your needs, we provide two broad mechanisms to access the data:

  • Pull: the client needs to periodically poll the system and check what is new and retrieve that data. The protocol being used is REST with JSON encoded data.
  • Push: the Sensolus platform will push the data as soon as it is available towards the client. REST based push and MQTT is supported.
Both mechanisms have their pro's and con's
Table 1. Pull vs Push API
PRO CON
PULL
  • only needs client at customer site
  • can retrieve historical data
  • quota limitations
  • data lags behind
PUSH
  • real-time data
  • no quota
  • needs server at customer site
  • needs to deal with out-of-order message handling

Typically, the push method is preferred if your goal is to remain completely in sync with the data in the Sensolus platform. It also avoids hitting API quota limits. The pull mechanism can still be used to do an initial sync or to support exceptional querying cases.

Custom business data API

It is possible to create your own data channels and inject your business data into the platform. The injected data can be validated against your custom json schema and your custom data format will be supported by the advanced search and filtering functionality.

Your injected data will be available through the push and pull API just like any other data.

External device integration API

The platform transforms device data protocols to a common internal message format. This allows us to easily integrate device data from external hardware or other IoT platforms. Examples of this include:

Note: Please contact your partner or Sensolus directly if your use case requires integration with external devices or infrastructure.