API Overview
Usecases
Cheatsheet

MQTT Publish Topics

Create signals

Topic:

POINT/PUSH

Payload:

{
"pointId":"507f1f77bcf86cd799439011",
"parentPointId":"507f191e810c19729de860ea", // Optional
"tenantId":"my-tenant-name",
"tenantKey":"abcd123abcd123abcd123",
"signals":[
{
"value":"22.23",
"unit":"CELSIUS_DEGREES",
"type":"Temperature",
"metadata: { }, // Optional
"timestamp":"2017-07-12T12:53:27+00:00"
}
]
}

  • value is can be any String value. The value is stored in following format { rawValue: String, numericValue: Float | null } where null means it is not possible to convert the value to number.
  • unit is one of the strict defined values from below.
  • type can by any string value. You can query allExistingTypes on tenant.
  • metadata can be any JSON object. It allows you to attach any other information related to the signal.

Possible units:

  // Temperature
CELSIUS_DEGREES,
FAHRENHEIT_DEGREES,
KELVINS,

// Sound
DECIBELS,
BEATS_PER_MINUTE,

// Position
LATITUDE_DEGREES,
LONGITUDE_DEGREES,

// Speed, acceleration, ...
METERS_PER_SECOND,
KILOMETERS_PER_HOUR,
METERS_PER_SECOND_SQUARED,

// Distance
METERS,
KILOMETERS,
CENTIMETERS,

// Time
SECONDS,

// Storage, speed
BITS,
BITS_PER_SECOND,

// Weight
GRAMS,
KILOGRAMS,

// Volume
LITERS,

// Humidity
GRAMS_PER_METERS_CUBIC,
// ... and relative as PERCENTS

// Generic
GENERIC,
DEGREES,
PERCENTS,
UNKNOWN,

Heartbeat

heartbeat / ping to notify the server that we are still alive. If you would like to get a server notification back to use in e.g. a watchdog you can do this by including the "watchdog":true. it will return the message on the device-specific watchdog topic (see here)

Topic:

POINT/HEARTBEAT

Payload:

{
"pointId":"60a3ae9c75427570e934022b",
"tenantId":"boring-company",
"tenantKey":"abcd123abcd123abcd123",
"watchdog": true, // Optional
// ... any other data to be forwarded
}

Ready to get started?