Skip to content

Capability Reporting

After onboarding, a device reports what it is — its compute resources and interfaces — so the platform knows what workloads it can run.

Who this is for: OT engineers connecting devices.

The device submits a manifest of kind DeviceCapabilitiesManifest, with:

  • apiVersion
  • kindDeviceCapabilitiesManifest
  • properties — the reported resources

Under properties, a device reports:

ResourceContents
cpunumber of cores (and, optionally, architecture)
memoryavailable memory
storageavailable storage
peripheralsoptional — list of attached peripherals
interfacesoptional — list of network/other interfaces

cpu, memory, and storage are always present; peripherals and interfaces are optional.

The Margo API defines no GET for capabilities — there is no endpoint to read capabilities back through the API. A device reports its manifest (POST), can replace it (PUT), and can unregister (DELETE) — all against the /clients/:clientId/capabilities/:deviceId path (Margo v1.0.0-rc2). Within Fleet Manager, the reported capabilities are surfaced on the Overview tab of the device detail page.

The platform uses reported capabilities to match applications to devices — for example, an application’s resource requirements and compatible-device list (see Applications) are checked against what a device reports here.