Skip to content
Stand with Ukraine flag

Update Multiple Attributes

  • Widget
  • v1.0.0
  • Sep 1, 2026
  • MIT license
  • v4.2+ | Built-in
Update Multiple Attributes

Allows to create an input form and set multiple values of the entity. Each input value may be stored as an attribute or time series data. Each input field is highly customizable via input types, value conversion functions, etc.

Widget Type
  • Latest
Category
  • Input Forms

Who it’s for

Anyone who needs a dashboard to capture input rather than only display it — commissioning engineers entering per-device calibration constants, operators recording a manual reading, technicians setting thresholds the rest of the platform depends on. The alternative is editing attributes one at a time in the entity details, which does not scale past a handful of devices.

What it does

The Update Multiple Attributes widget builds an input form from the data keys you configure and writes every field back to the entity on save. Each key becomes a field, with its own input type and optional conversion function, and the values are stored as attributes or as time series depending on how each key is set up.

  • A form, not a control — several values entered together and committed in one action, which matches how commissioning data is actually collected.
  • Each field carries its own input type, so text, numbers, booleans and dates each get an appropriate control.
  • Conversion functions shape what is stored, so what the operator types and what the device expects need not be the same.
  • Fields for several entities can be grouped under titles, which lets one form cover a device and its parent asset.
  • Layout is configurable — rows or columns, a set number of fields per row, and explicit gaps — so a long form stays readable.
  • Save and undo buttons are optional and relabellable, and the form can be set to write every field rather than only the changed ones.
  • The Update Multiple Attributes widget writes what is in its fields: it sends no RPC and commands nothing, so a device that must act immediately needs a control widget as well.

How to set up

Data keys

The Update Multiple Attributes widget takes one form field per data key.

KeyRoleTypeDescription
Any keyOne input fieldAttributeTime series keys work too and are written as telemetry. Each key’s own settings decide its input type, its label, whether it is required, and any conversion applied before saving.

Add one key per field, set each one’s input type, and check the write scope. A key added as a server attribute is written where the platform can read it and the device cannot, and a form intended to configure firmware needs shared scope instead.

Form

SettingDefaultEffect
Show action buttonsOnShows the save and undo buttons
Update all values, not only modifiedOffWrites every field on save rather than only the changed ones
’SAVE’ / ‘UNDO’ button labelPlatform defaultThe button text
Show title for group of fieldsOffCaptions each entity’s group of fields
Fields alignmentRowLays fields out in rows or in a column
Number of fields in the rowPlatform defaultHow many fields share a row
Show result messageOnConfirms the save on screen

How to customize

  • To lay out a long form — set Fields alignment and the Number of fields in the row, then adjust the row and column gaps.
  • To label the action in the operator’s terms — set the ‘SAVE’ button label to something like Apply calibration.
  • To write everything every time — turn on Update all values, not only modified, which suits a form whose values must be re-asserted together.
  • To separate entities visually — turn on the group title and set its text, so a device’s fields do not run into its asset’s.
  • To make a form read-only-ish — turn off Show action buttons where the form is submitted by a dashboard action instead.
  • To shape what is stored — set a conversion function on the individual data key.

Tips

  • Mark the fields that must be filled as required on the key rather than trusting the operator. Commissioning forms get completed under time pressure, and a missing calibration constant is discovered weeks later as a sensor that reads plausibly and wrongly.
  • Keep one form to one purpose. A form mixing calibration constants with an occasional manual reading gets saved in full every time, and the setting nobody meant to touch is re-asserted along with everything else.

Share Your Widget with the Community

Built a custom widget? Export it as a JSON from ThingsBoard and publish it to the IoT Hub through a simple 4-step wizard (Upload, Listing, Readme, Review & Submit). Share it with thousands of ThingsBoard developers worldwide and get featured in the catalog.