Infuse IoT

Devices

Understand the Infuse IoT device registry, identifiers, metadata, state, and route lookups.

Devices are the operational targets for telemetry, state tracking, commands, firmware workflows, and Marketplace installs. A device record binds a physical or logical device to an organisation, board, MCU identifier, Infuse deviceId, and metadata.

Device IDs are also used in Marketplace checkout and purchase APIs when a customer buys products for specific devices. Backend services should treat Infuse IoT as the source of truth for the deviceId values passed into Marketplace and downstream data workflows.

Device Identity

Infuse IoT supports several lookup paths because different systems know different identifiers:

IdentifierTypical use
idInternal UUID-style record identifier used by backend systems.
deviceIdDevice-facing Infuse identifier, represented as a 16-character hex string in RPC workflows.
mcuIdHardware MCU identifier reported by the device.
SoC and MCU IDHardware lookup when discovering or reconciling a physical device.
boardIdLinks the device to a board profile.
organisationIdScopes the device to the owning organisation.
metadataProduct-specific fields such as serial number, customer assignment, deployment site, or hardware variant.

Boards, Networks, And Metadata

Boards describe hardware families or product profiles. Use board records to group devices and define board-specific metadata fields. Networks describe connectivity or deployment groupings where your backend needs that separation.

The common registry flow is:

  1. Resolve or create the owning organisation.
  2. Resolve or create the board profile for the device family.
  3. Resolve or create a network if your deployment model needs one.
  4. Create the device with mcuId, boardId, organisationId, and optional metadata.
  5. Store the returned identifiers in your backend system so downstream workflows use the same device identity.

State And Route Context

Device state is the latest operational view Infuse IoT has for a device. It includes timestamps and may include route details such as the last interface or UDP address seen for the device.

Last-route lookups are important for downlink workflows. If an RPC is sent immediately, Infuse IoT can use the device's last known route. If you choose a wait timeout, Infuse IoT can wait for the device to send a packet before sending the RPC.

Useful Endpoints

TaskEndpoint
List or create devicesGET /device, POST /device
Read or update by record IDGET /device/id/{id}, PUT /device/id/{id}
Read by device IDGET /device/deviceId/{deviceId}
Read by SoC and MCU IDGET /device/soc/{soc}/mcuId/{mcuId}
Read state by record IDGET /device/id/{id}/state
Read state by device IDGET /device/deviceId/{deviceId}/state
Read last routeGET /device/deviceId/{deviceId}/lastRoute
Read routes for many devicesPOST /device/lastRoute
List devices and state togetherGET /device-and-state

For request schemas and response shapes, see the Infuse IoT API reference.