Ingestion
Topics, QoS, payload format, timestamps, and how we detect a device that goes offline. Your devices connect outward to our broker, with credentials you can revoke at any time.
bloomiot/v1/d/<deviceId>/telemetryDocumentation
If your devices already publish over MQTT, you do not need to wait for anyone. We issue credentials, you map your fields, and you get zone mapping, history, and alerts running on the hardware already in the field.
MQTT 3.1.1 / 5.0 · TLS 1.2+ · JSON · no SDK required
What each device type actually publishes
The same telemetry contract, three real shapes. Pick a device type to see its payload and which fields the Workspace already understands.
{
"deviceId": "node-lot3-04",
"ts": "2026-08-27T14:20:05Z",
"zone": "zone-b",
"fw": "1.4.2",
"metrics": {
"soil_moist": 0.31,
"battery_v": 3.71
},
"status": {
"rssi": -78
}
}metrics.soil_moist → Soil moisturemetrics.battery_v → Batterystatus.rssi → Signal strengthA Soil Sensor Node reports moisture and battery on a fixed interval — no valve, no pressure, just the field reading.
Ingestion and mapping are enough for full monitoring. Remote control is optional and depends on your firmware.
Topics, QoS, payload format, timestamps, and how we detect a device that goes offline. Your devices connect outward to our broker, with credentials you can revoke at any time.
bloomiot/v1/d/<deviceId>/telemetryMatch the fields in your JSON to Workspace variables, with unit conversion and a preview of the last message received.
soil_moist (0–1) → Soil moisture (%)To open and close valves from the Workspace, your firmware needs to subscribe to the commands topic and report status back. Without it, everything else still works in monitoring mode.
.../commands · QoS 1Ingestion is uniform: anything that publishes gets in. Control is not, and we would rather say so here than have you discover it mid-integration.
Native MQTT
Your firmware, ESP32 or other MCU
MQTT client over TLS and a subscription to the commands topic.
LoRaWAN
Via your Network Server
A bridge from your Network Server to our broker.
Modbus / RS-485
PLCs, flow meters, weather stations
Something has to poll the bus — yours or ours.
REST API / webhook
Platforms and dataloggers
A token-authenticated endpoint. No return channel to the device.
Bloomiot Kit
Our own hardware · in development
No integration: it ships provisioned and just shows up in the Workspace.
The same path every bring-your-own-hardware account follows inside the Workspace.
Generate device credentials
Register the device and publish a test message
Map your JSON fields to Workspace variables
Send real telemetry and confirm it lands on the device
Assign the device to a zone
Turn on the alerts that apply to your data
The same schema every device — Bloomiot or third-party — publishes against.
Protocol
MQTT 3.1.1 / 5.0
Transport
TLS 1.2+ · port 8883
QoS
1 · at least once
Telemetry interval
From 60 s per device
Identity
1 credential per device
Commands
QoS 1 · JSON envelope
Timestamp
ISO 8601 UTC
Offline detection
Status topic · Last Will pattern
Firmware transfer
Never over MQTT · HTTPS + SHA-256
bloomiot/v1/d/{deviceId}/telemetryDevice → cloud. Sensor readings, or a gateway batch of child nodes.
bloomiot/v1/d/{deviceId}/statusDevice → cloud. Connection state; doubles as Last Will when the device drops without warning.
bloomiot/v1/d/{deviceId}/commandsCloud → device. Valve control, reboot, and OTA update, QoS 1.
bloomiot/v1/d/{deviceId}/events/otaDevice → cloud. OTA progress: accepted, downloading, verifying, success, failed.
Every field beyond deviceId and ts is optional — send only what your hardware measures.
deviceIdstringRequiredtsISO 8601Requiredmetrics.soil_moist0 – 1Optionalmetrics.pressure_bar0 – 20 barOptionalmetrics.flow_lpm0 – 1000 L/minOptionalmetrics.battery_v0 – 5 VOptionalstatus.valveopen · closedOptionalstatus.rssinumberOptionalExample: a device publishing telemetry
Every alert declares which variable it needs. If your devices do not publish it, it shows disabled in the Workspace instead of failing silently.
Valve open without pressure
Line pressure falls below 1.8 bar while a valve is open.
pressure_bar + valve status
Sudden pressure drop
Pressure falls more than 0.8 bar faster than the expected pattern.
pressure_bar
Flow with valve closed
Flow above 1 L/min is detected while every valve should be shut.
flow_lpm + valve status
Moisture did not rise after irrigation
A zone rises less than 2% after a completed irrigation cycle.
soil_moist + zone
Device without communication
No message for more than 10 minutes, or the status topic reports offline.
nothing · any device
Battery nearing empty
Battery voltage falls under 20% for that node.
battery_v
Full catalog (18 rules) available inside the Workspace under Alerts.
The same modules, whether your data comes from Bloomiot hardware or your own devices.
Satellite intelligence
Scale and Enterprise plans layer Sentinel-2 satellite imagery on top of your ground data — no extra hardware, no extra integration, and it works no matter which route above you chose.
Whole-field coverage
A ground sensor reports one point. Sentinel-2 imagery covers the entire field at 10 m resolution, so a stressed zone without a nearby sensor still shows up.
Five vegetation and moisture indices
NDVI, NDMI, NDRE, MSAVI and RECI turn raw imagery into vigor, water-stress and chlorophyll signals your team can act on.
Works before the first device ships
Satellite layers populate as soon as a site is created — even before a single sensor is registered.
Cross-checks ground truth
When a sensor reading and the imagery disagree, that gap is often the first sign of a failing probe or an uneven irrigation pattern.
In development
Soil moisture nodes, an edge controller with valve actuation, and pressure-based leak detection. It ships provisioned from the factory: no integration, no mapping, no firmware to write. Not available yet — the installation guide publishes at launch.
Support
Send us a sample payload and the device model, request test credentials, or flag anything wrong with this page. Every message here reaches our team directly.