Itron · Capability

Iot Device Onboarding

Iot Device Onboarding is a Naftiko capability published by Itron, one of 2 capabilities the APIs.io network indexes for this provider.

Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Run with Naftiko

Capability Spec

iot-device-onboarding.yaml Raw ↑
name: IoT Device Onboarding
description: |
  Workflow capability that onboards a new IoT device to the Itron Starfish Data
  Platform: pick or create the appropriate device template, register the device,
  emit a heartbeat observation, then verify the observation lands in the query API.
url: https://github.com/api-evangelist/itron/capabilities/iot-device-onboarding.yaml
created: '2026-05-23'
modified: '2026-05-23'

uses:
- ./shared/starfish-data-platform.yaml

inputs:
- name: deviceId
  required: true
- name: templateId
  required: true
- name: deviceName
  required: true
- name: tags
  required: false

steps:

- id: ensureTemplate
  description: Ensure the requested template exists; fall back to static templates if not.
  capability: starfish-data-platform.Device Templates.getDeviceTemplates
  on_missing: starfish-data-platform.Device Templates.getStaticTemplates

- id: registerDevice
  description: Register the device against the solution.
  capability: starfish-data-platform.Devices.postDevice
  body:
    id: ${inputs.deviceId}
    name: ${inputs.deviceName}
    templateId: ${inputs.templateId}
    tags: ${inputs.tags}

- id: postHeartbeat
  description: Emit an initial heartbeat observation so downstream tooling can verify ingest.
  capability: starfish-data-platform.Observations.postDeviceObservation
  path:
    deviceId: ${inputs.deviceId}
  body:
    timestamp: ${now}
    tags: [onboarding, heartbeat]

- id: verifyIngest
  description: Confirm the heartbeat is queryable.
  capability: starfish-data-platform.Observations.queryDeviceObservations
  path:
    deviceId: ${inputs.deviceId}
  body:
    limit: 1
    tags: heartbeat
  expect:
    minResults: 1