Devices
Device Heartbeat
Report device health status for fleet monitoring
POST
Report device health status including battery level, storage usage, and signal strength. Health data is stored on the device record and returned in Get Device and List Devices responses.
Authentication
This endpoint accepts two authentication methods depending on the device connectivity:Path Parameters
The device’s unique identifier (e.g.,
dev_abc123), or me when using a device token. The me alias resolves to the device ID associated with the token, so the device doesn’t need to know its own Bota ID. When using an explicit device ID with a device token, it must match the token’s device.Request Body
All fields are optional — send only the metrics your device can report.Current battery level (0-100).
Battery voltage in millivolts (e.g., 3700 = 3.7V). Useful for diagnosing power issues.
Whether the device is currently charging.
Storage used in megabytes.
Total storage capacity in megabytes.
Cellular signal strength in dBm (typically -50 to -120, where higher/less negative is better).
Current firmware version string (max 32 characters).
Device name (max 64 characters). Updated in the device record when provided.
Current device operational state (max 32 characters). One of:
idle, recording, syncing, uploading, charging, lowBattery, storageFull, error.Number of recordings on the device pending sync/upload.
Device status flags as a 1-byte bitmask (0-255). Bit 0: charging, Bit 1: low battery, Bit 2: storage full, Bit 3: WiFi connected, Bit 4: LTE connected, Bit 5: sync active.
LTE/4G modem status. One of:
off, searching, registered, connected, denied, no_sim, error, low_voltage, disabled.WiFi radio status. One of:
off, scanning, connecting, connected, connect_failed, no_credentials, disabled, error.Active device connections. Array of:
wifi, 4g, ble.The channel currently being used to upload recordings. One of:
wifi, 4g, ble. Set to null to clear. Omit if no upload is in progress.Response
Returns{ "status": "ok" } on success.

