Access tokens

A new level of integration for the platform

The server update of April 2017 released a new feature, called Access Tokens, which controls access to Thinger.io resources from the REST API.

It is quite similar to the Identity and Access Management (IAM) of Amazon Web Services: you specify what kind of resource and what action you want to grant access to. This feature opens the platform to a new level of integration, and this post shows a new use case: integrating Sigfox devices.

This is the method from before the Sigfox plugin. Since 2020 the Sigfox Integration Plugin handles large networks with auto-provisioning and downlinks; the callback described here still suits a single device.

How Sigfox works

Devices that are not connected to the platform

Sigfox devices by nature are not directly connected to the platform, like any other device such as an Arduino or a Raspberry. Instead, they send a few short messages a day.

The Sigfox network

Uplink messages
Up to 140 a day
Uplink payload
12 bytes
Downlink messages
Up to 4 a day
Downlink payload
8 bytes
ISM radio band
868 MHz Europe · 902 MHz US
Radio
Ultra narrowbandLPWAN

Payload sizes exclude the message header and the transmission information.

For this task Sigfox employs a proprietary technology that communicates over the Industrial, Scientific and Medical (ISM) radio band, at 868 MHz in Europe and 902 MHz in the US. It uses a wide-reaching signal that passes freely through solid objects, called "ultra narrowband", and requires little energy, hence the term "Low-power Wide-area network" (LPWAN).

The integration

Callbacks, a data bucket and an access token

The messages received by the Sigfox platform can be retransmitted to other platforms through what Sigfox calls callbacks.

A Sigfox callback

A callback basically consists of defining an HTTP endpoint that is called when the Sigfox platform receives a new message. The Sigfox back-end can be configured this way to retransmit the data to your Thinger.io account.

A data bucket

The information can be stored easily in Thinger.io data buckets.

An access token for that bucket

Here is where the access token feature comes in: issue a token that grants external applications write access over one specific data bucket of your own. With this token, the Sigfox callback can insert data into your bucket.

The whole process is documented in the Sigfox guide of the documentation: take a look at it if you want to create real-time dashboards for your Sigfox devices.

The result

A real-time dashboard for a Sigfox device

A dashboard monitoring temperature and humidity from the SmartEverything device.

Sigfox Dashboard in Thinger.io: a temperature and humidity chart over about nine hours, the device location on a Google map near Segovia, link quality of -130 RSSI, the monitored device C378F and the Sigfox station 06C9
Temperature and humidity over the evening, the device location, the link quality and the Sigfox station that received the message, all on one dashboard.

Create real-time dashboards for your Sigfox devices

A callback, a data bucket and an access token: the Sigfox data on a live dashboard.