Telemetry
Publish time-series data to ThingsBoard by sending a message to the telemetry topic. ThingsBoard stores each key-value pair as a time-series data point and makes it available in dashboards, rule chains, and the REST API. For connection parameters and credential types, see Getting Connected.
| Format | Topic |
|---|---|
| Short | v2/t |
| Standard | v1/devices/me/telemetry |
Payload Formats
Section titled “Payload Formats”Simple key-value
Section titled “Simple key-value”ThingsBoard records the server receive time as the timestamp.
{"temperature": 22.5, "humidity": 61}With client-side timestamp
Section titled “With client-side timestamp”Use this when the device has a reliable clock and you want the exact measurement time stored. ts is a Unix timestamp in milliseconds.
{"ts": 1451649600512, "values": {"temperature": 22.5, "humidity": 61}}Array of objects with client-side timestamp
Section titled “Array of objects with client-side timestamp”Send multiple readings at different timestamps in a single publish.
[ {"ts": 1451649600000, "values": {"temperature": 22.5, "humidity": 61}}, {"ts": 1451649601000, "values": {"temperature": 22.7, "humidity": 60}}]Supported Value Types
Section titled “Supported Value Types”| Type | Example |
|---|---|
| String | "value1" |
| Boolean | true |
| Double | 42.0 |
| Long | 73 |
| JSON object | {"nested": {"key": "value"}} |
| JSON array | [1, 2, 3] |
Example
Section titled “Example”mosquitto_pub -d -q 1 -h "$THINGSBOARD_HOST" -p 1883 -t "v2/t" -u "$ACCESS_TOKEN" -m '{"temperature": 22.5, "humidity": 61}'