Task selector card
The Task selector card lets a reader choose an allowed task and open its execution panel for the current dashboard scope.
When to use it
Use it when several related tasks should be available from one card. Use Task execute for one fixed task with no selection step.
Live example
The Card Lab supplies deterministic task definitions and execution state to the production selector. Opening the task panel is explicitly simulated and never starts a task.
Open the Task selector Card Lab in a new page
Requirements
| Requirement | Value |
|---|---|
| Dashboard types | Standard and aggregation |
| Minimum size | 2 columns by 2 rows |
| Data | Task definitions plus the selected entity context for scoped execution |
| Backend capabilities | Task search, task lookup, execution status, and task-panel support |
| Permissions | Permission to view and execute the offered tasks on the selected target type |
Configuration
The paths below are relative to cardConfig.data.
title
| Property | Value |
|---|---|
| Type | string with interpolation |
| Required | No |
| Default | no title provided |
| Values | Text interpolated against the loaded task result |
Sets the card heading.
entityType
| Property | Value |
|---|---|
| Type | string |
| Required | When executing against entities |
| Default | No default |
| Values | client, device, generic, global, group, or interface |
Chooses the target context passed to the task panel. Only client, device, group, and interface resolve to an entity query; generic and global do not open a scoped task through this card.
uniqueTaskNameRegexFilter
| Property | Value |
|---|---|
| Type | Regular-expression string |
| Required | No |
| Default | No regular-expression search |
| Values | Backend-supported case-insensitive regular expression |
Searches tasks by unique name.
Leading and trailing / characters are removed.
When present, this mode takes precedence over every other task-list source.
entityTypeSelectionArrayFilter
| Property | Value |
|---|---|
| Type | Array of strings |
| Required | No |
| Default | No entity-type search |
| Values | client, device, generic, global, group, interface |
Loads tasks separately for each listed run-on type. It is used only when no regular-expression filter is set and takes precedence over explicit task lists.
uniqueTaskNamesArray
| Property | Value |
|---|---|
| Type | Array of strings |
| Required | No |
| Default | Empty array |
| Values | Exact task unique names |
Loads the listed tasks in order.
Blank names are ignored.
This legacy list is used only when taskOptions has no non-empty entries and neither search filter above is active.
taskOptions
| Property | Value |
|---|---|
| Type | Array of objects |
| Required | No |
| Default | Empty array |
| Values | Ordered task references |
Loads exact tasks in array order and can override their visible names.
Non-empty taskOptions takes precedence over uniqueTaskNamesArray.
taskOptions[].uniqueTaskName
| Property | Value |
|---|---|
| Type | string |
| Required | To use the entry |
| Default | No default |
| Values | Exact backend task unique name |
Identifies the task to load. Blank values and missing tasks are omitted.
taskOptions[].displayName
| Property | Value |
|---|---|
| Type | string |
| Required | No |
| Default | Backend task name, then no name (<id>) |
| Values | Visible list label |
Overrides the backend display name without changing which task executes.
infoAlertContent
| Property | Value |
|---|---|
| Type | string |
| Required | No |
| Default | No informational description |
| Values | Plain text |
Adds explanatory content to the selector card.
Examples
Ordered maintenance tasks
{
"cardId": "task-selector",
"data": {
"title": "Maintenance",
"entityType": "device",
"taskOptions": [
{ "uniqueTaskName": "device.backup", "displayName": "Back up configuration" },
{ "uniqueTaskName": "device.reload", "displayName": "Reload device" }
]
}
}
The card shows the two successfully resolved tasks in that order and scopes execution to the current device query.
Behavior
The action remains tied to the selected task and opens the task panel rather than executing immediately. The card watches the current user’s latest matching execution and reports when that task is already running or pending. If no filter or explicit list is configured, it asks the author to configure one instead of loading every task.
Limitations and safety
Task actions can change managed infrastructure. Use explicit lists when a dashboard should expose a tightly controlled set, and ensure backend authorization remains authoritative.
Related cards
See Task execute.

