Skip to content

Attributes

Attributes are key-value pairs that describe the properties, state, or configuration of an entity. Unlike telemetry, attributes represent semi-static data — iRis Cloud stores only the latest value and its timestamp.

Each attribute entry consists of:

  • Key — the attribute name (e.g., maxTemperatureThreshold)
  • Value — string, boolean, integer, double, or JSON object
  • Timestamp — Unix epoch in milliseconds; the last time this attribute was updated

Example payload:

{ "reportingInterval": 60, "firmwareVersion": "v2.4.0", "alarmEnabled": true }

Unlike time-series data, only the latest value per key is retained — there is no history.

iRis Cloud supports three attribute scopes that define who can read and write each attribute:

ScopeWritable byReadable byAvailable for
Server-sidePlatform onlyPlatformAll entities
SharedPlatform onlyPlatform + HMI DeviceHMI Device only
Client-sideHMI Device onlyPlatform (read-only)HMI Devices only

Server-side attributes store platform-managed metadata and configuration. HMI Devices cannot read or modify them — they are managed exclusively via the iRis Cloud UI or REST API.

Typical use: location data, alarm thresholds, operational settings.

{
"latitude": 40.7128,
"longitude": -74.0060,
"maxTemperatureThreshold": 40,
"alarmEnabled": true
}
  • latitude / longitude — used in map widgets to show entity location
  • maxTemperatureThreshold — referenced by Alarm rules to trigger alarms
  • alarmEnabled — controls whether alarm generation is active

Shared attributes deliver configuration from the platform to a HMI Device. The platform writes them; the HMI Device can read them but cannot modify them.

Typical use: remote HMI Device configuration — target firmware version, reporting interval, operational thresholds.

HMI Devices receive updates depending on their protocol:

  • Real-time (e.g., MQTT) — subscribe to attribute updates and receive notifications immediately when a value changes
  • Periodic polling (e.g., HTTP) — poll the server at intervals for the latest values
{
"targetFirmwareVersion": "v2.4.0",
"reportingInterval": 60,
"maxTemperatureThreshold": 45
}
  • targetFirmwareVersion — HMI Device checks this to decide whether an upgrade is needed
  • reportingInterval — how often (in seconds) the HMI Device should publish telemetry
  • maxTemperatureThreshold — limit the HMI Device uses locally for its own control logic

Client-side attributes are reported by the HMI Device to the platform. The platform stores and displays them but cannot modify them — only the HMI Device can write these values.

Typical use: reporting active firmware version, current configuration, HMI Device state.

{
"currentFirmwareVersion": "v2.3.1",
"currentConfiguration": { "mode": "auto", "interval": 30 },
"deviceState": "ACTIVE"
}
  • currentFirmwareVersion — used for fleet-wide firmware monitoring
  • currentConfiguration — the HMI Device’s active runtime config (mode, interval, etc.)
  • deviceState — current status, e.g., ACTIVE, IDLE, ERROR
  1. Open the entity details page (e.g., Entities → Devices → [device name]).
  2. Navigate to the Attributes tab and select the scope: Server-side, Shared, or Client-side.
  3. Click + to open the Add attribute dialog.
  4. Enter the Key, select the data type (String, Boolean, Integer, Double, or JSON), and enter the Value.
  5. Click Add.

To create many assets and their attributes at once, use Import Assets from CSV.

CapabilityDescriptionGuide
Monitor on dashboardsDisplay and compare attribute values with gauges, cards, and entity tables; edit writable attributes directly from the UI with input widgetsDashboards
Configure HMI Devices remotelyWrite shared attributes to push configuration to HMI Devices; HMI Devices receive updates in real time or via pollingConnectivity guide
Trigger alarmsFire alarms when an attribute value crosses a thresholdAlarm rules
Query via REST APIRead and write attributes by scope programmatically—