Skip to content
Stand with Ukraine flag

Multiple selection table

  • Widget
  • 9 installs
  • v1.0.0
  • Jul 20, 2026
  • MIT license
  • v4.2+
Multiple selection table

Displays a list of entities that match the selected alias and optional filter. Provides the ability for full-text search and pagination, except for columns with post-processing or cell content functions. Supports multiple selection actions — selecting one or more rows reveals a dedicated toolbar with custom actions that operate on the whole selection at once. Highly customizable using widget styles, data source keys, and widget actions.

Widget Type
  • Latest
Category
  • Tables & Lists

Entities Table with Multiple Selection Actions

An enhanced version of the default Entities Table widget that adds support for multiple selection actions.

What’s new

When one or more rows are selected, a dedicated toolbar appears at the top of the table, exposing custom actions that operate on the whole selection at once — rather than a single entity at a time.

How it works

Configure a custom action with the action type “Multiple selection action”. When triggered, the widget passes the selected rows into the action through additionalParams, using the following structure:

{
"entityIds": [
{
"id": "13814000-1dd2-11b2-8080-808080808080",
"entityType": "DEVICE"
}
],
"entities": [
{
"id": {
"id": "13814000-1dd2-11b2-8080-808080808080",
"entityType": "DEVICE"
},
"entityName": "Simulated",
"entityLabel": "Simulated",
"entityType": "DEVICE",
"Entity name": "Simulated",
"Entity type": "Device",
"Sin": -601,
"Cos": -799,
"Random": -94.18
}
]
}
  • entityIds — a lightweight array of the selected entities (id + entityType only), convenient for bulk API calls.
  • entities — the full data rows for each selected entity, including the displayed datasource columns (telemetry/attributes such as Sin, Cos, Random) alongside the standard fields (entityName, entityLabel, entityType).

Use cases

  • Bulk assign / unassign devices to a customer
  • Bulk delete or bulk state change
  • Trigger a shared dashboard state or REST call for the whole selection
  • Any batch operation that would otherwise require repeating a single-entity action row by row

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.