Commands for managing Action Center tasks, catalogs, comments, labels, metadata, and task data using the `uip tasks` tool.
uip tasks manages Action Center tasks — the human-in-the-loop work items (form fills, approvals, document validation/classification, data labeling) that RPA processes and agents create for a person to complete. The tool lets you list and inspect tasks, assign or reassign them, complete them with an action and data payload, and manage the auxiliary resources attached to a task: catalogs (grouping/retention config), comments, labels (tags), metadata (title/priority/catalog link), and the task's own form/business data. tasks is the command prefix; the underlying package is @uipath/tasks-tool.
Folder scoping — every verb that operates on a specific task or catalog accepts --folder-id <id>, --folder-path <path>, or --folder-key <key> (mutually exclusive; enforced at parse time via Commander conflicts). When none is passed on an interactive terminal, the CLI shows a folder picker; in a non-interactive run (CI, coding agents) it fails fast asking for one. uip tasks list and uip tasks get are the two exceptions — a folder is optional there and simply narrows the results/lookup when given.
Task type — several verbs (get --task-type, complete --type) take one of FormTask, ExternalTask, AppTask, DocumentValidationTask, DocumentClassificationTask, DataLabelingTask, QuickFormTask. An unrecognized value fails client-side with the full list named in the error.
Pagination — list-style verbs (list, catalogs list, comments list, users) page internally with a 100-item page size and follow nextCursor until exhausted or --limit is reached, returning one flat array either way — there's no cursor flag to manage yourself.
Catalogs are optional grouping/retention config for tasks — metadata --catalog-id links a task to one; catalogs create/update's retention fields (--retention-action, --retention-period, --retention-bucket-id) control what happens to catalog data over time. --encrypted on catalogs create is immutable — there's no way to change it via catalogs update.
assignment uip tasks list [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ] [ -- as - admin] [ - l, -- limit < n> ]
uip tasks get < id> [ -- task- type < type> ] [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ]
uip tasks assign < task- id> ( -- user- id < id> | -- user < email> )
uip tasks reassign < task- id> ( -- user- id < id> | -- user < email> )
uip tasks unassign < task- id>
uip tasks complete < task- id> -- type < type> [ -- data < json> ] [ -- action < action> ] [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ]
uip tasks users [ folder- id] [ -- folder- path < path> | -- folder- key < key> ] [ - l, -- limit < n> ]
uip tasks catalogs list [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ] [ - l, -- limit < n> ]
uip tasks catalogs get < id> [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ]
uip tasks catalogs create -- name < name> [ -- description < text> ] [ -- encrypted] [ -- retention- action < action> ] [ -- retention- period < days> ] [ -- retention- bucket- id < id> ] [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ]
uip tasks catalogs update < id> [ -- name < name> ] [ -- description < text> ] [ -- retention- action < action> ] [ -- retention- period < days> ] [ -- retention- bucket- id < id> ] [ -- folder- id < id> | -- folder- path < path> | -- folder- key < key> ]
uip tasks comments list < task- id> [ - l, -- limit < n> ] [ folder options]
uip tasks comments add < task- id> -- text < text> [ folder options]
uip tasks labels < task- id> -- labels < json> [ folder options]
uip tasks metadata < task- id> [ -- title < text> ] [ -- priority < level> ] [ -- catalog- id < id> | -- unset- catalog] [ -- note < text> ] [ folder options]
uip tasks data get < task- id> [ folder options]
uip tasks data save < task- id> -- data < json> [ folder options]
uip tasks list [--folder-id <id> | --folder-path <path> | --folder-key <key>] [--as-admin] [-l, --limit <n>]
uip tasks get <id> [--task-type <type>] [--folder-id <id> | --folder-path <path> | --folder-key <key>]
uip tasks assign <task-id> (--user-id <id> | --user <email>)
uip tasks reassign <task-id> (--user-id <id> | --user <email>)
uip tasks unassign <task-id>
uip tasks complete <task-id> --type <type> [--data <json>] [--action <action>] [--folder-id <id> | --folder-path <path> | --folder-key <key>]
uip tasks users [folder-id] [--folder-path <path> | --folder-key <key>] [-l, --limit <n>]
uip tasks catalogs list [--folder-id <id> | --folder-path <path> | --folder-key <key>] [-l, --limit <n>]
uip tasks catalogs get <id> [--folder-id <id> | --folder-path <path> | --folder-key <key>]
uip tasks catalogs create --name <name> [--description <text>] [--encrypted] [--retention-action <action>] [--retention-period <days>] [--retention-bucket-id <id>] [--folder-id <id> | --folder-path <path> | --folder-key <key>]
uip tasks catalogs update <id> [--name <name>] [--description <text>] [--retention-action <action>] [--retention-period <days>] [--retention-bucket-id <id>] [--folder-id <id> | --folder-path <path> | --folder-key <key>]
uip tasks comments list <task-id> [-l, --limit <n>] [folder options]
uip tasks comments add <task-id> --text <text> [folder options]
uip tasks labels <task-id> --labels <json> [folder options]
uip tasks metadata <task-id> [--title <text>] [--priority <level>] [--catalog-id <id> | --unset-catalog] [--note <text>] [folder options]
uip tasks data get <task-id> [folder options]
uip tasks data save <task-id> --data <json> [folder options]
List tasks across folders (or one folder, when scoped).
Optionen
Long Wert Beschreibung --folder-id <id>Integer Filter by folder ID. --folder-path <path>string Filter by folder path (alternative to --folder-id). --folder-key <key>GUID Filter by folder key (alternative to --folder-id). --as-adminMarkieren List tasks as admin (broader visibility than your own assigned/available tasks). -l, --limit <number>Integer Maximum items to return. Fetches everything (paging internally) when omitted.
Beispiel
assignment uip tasks list -- folder- path "Shared/Finance" -- limit 20
uip tasks list --folder-path "Shared/Finance" --limit 20
Datenform (--output json)
assignment { "Code" : "TaskList" , "Data" : [ { "id" : 1 , "title" : "Approve invoice" , "type" : "FormTask" , "status" : "Pending" } ] }
{ "Code": "TaskList", "Data": [ { "id": 1, "title": "Approve invoice", "type": "FormTask", "status": "Pending" } ] }
Get details of a task by ID.
Argumente
Name Erforderlich Zweck <id>ja Task ID. Use tasks list to find one.
Optionen
Long Wert Beschreibung --task-type <type>one of the 7 task types Task type. Requires a folder option when passed — fails fast otherwise. --folder-id <id> / --folder-path <path> / --folder-key <key>Folder scope. Required only when --task-type is set.
Beispiel
assignment uip tasks get 123 -- task- type FormTask -- folder- id 42
uip tasks get 123 --task-type FormTask --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskDetails" , "Data" : { "id" : 123 , "title" : "Approve invoice" , "type" : "FormTask" , "status" : "Pending" } }
{ "Code": "TaskDetails", "Data": { "id": 123, "title": "Approve invoice", "type": "FormTask", "status": "Pending" } }
uip tasks assign / reassign link
Assign a task to a user, or reassign it to a different one — identical option shape, different Code on success.
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Erforderlich Beschreibung --user-id <id>Integer one of these two Assignee's numeric user ID. --user <email>string one of these two Assignee's username or email (alternative to --user-id).
Passing neither fails with an explicit "missing assignee" error.
Beispiel
assignment uip tasks assign 123 -- user alice@company. com
uip tasks reassign 123 -- user- id 7
uip tasks assign 123 --user alice@company.com
uip tasks reassign 123 --user-id 7
Datenform (--output json)
assignment { "Code" : "TaskAssigned" , "Data" : { "id" : 123 , "assignedTo" : "alice@company.com" } }
{ "Code": "TaskAssigned", "Data": { "id": 123, "assignedTo": "alice@company.com" } }
Code is TaskReassigned for reassign.
Remove the assignee from a task. No options beyond the task ID.
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Beispiel
assignment uip tasks unassign 123
uip tasks unassign 123
Datenform (--output json)
assignment { "Code" : "TaskUnassigned" , "Data" : { "id" : 123 } }
{ "Code": "TaskUnassigned", "Data": { "id": 123 } }
Complete a task with an action and optional data payload.
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Erforderlich Beschreibung --type <type>one of the 7 task types ja Task type — validated client-side against the enum. --data <json>JSON nein Task data payload as a JSON string. --action <action>string conditionally Action name. Required in practice for FormTask and AppTask (not enforced client-side — the platform rejects a missing action for those types). Folder options nein A folder is resolved (interactively if omitted, on a TTY) before completing.
Beispiel
assignment uip tasks complete 123 -- type FormTask -- action Approve -- data '{"comment":"Looks good"}'
uip tasks complete 123 --type FormTask --action Approve --data '{"comment":"Looks good"}'
Datenform (--output json)
assignment { "Code" : "TaskCompleted" , "Data" : { "id" : 123 , "status" : "Completed" } }
{ "Code": "TaskCompleted", "Data": { "id": 123, "status": "Completed" } }
List users with task permissions in a folder — the source for --user-id/--user values on assign/reassign.
Argumente
Name Erforderlich Zweck [folder-id]nein Folder ID as a positional argument. Mutually exclusive with --folder-path/--folder-key — passing both fails explicitly.
Optionen
Long Wert Beschreibung --folder-path <path>string Folder path (alternative to the positional argument). --folder-key <key>GUID Folder key (alternative to the positional argument). -l, --limit <number>Integer Maximum items to return.
Beispiel
assignment uip tasks users 42
uip tasks users -- folder- path "Shared/Finance" -- limit 10
uip tasks users 42
uip tasks users --folder-path "Shared/Finance" --limit 10
Datenform (--output json)
assignment {
"Code" : "TaskUserList" ,
"Data" : [
{ "id" : 1 , "name" : "Alice" , "surname" : "Smith" , "userName" : "alice" , "emailAddress" : "alice@company.com" , "displayName" : "Alice Smith" }
]
}
{
"Code": "TaskUserList",
"Data": [
{ "id": 1, "name": "Alice", "surname": "Smith", "userName": "alice", "emailAddress": "alice@company.com", "displayName": "Alice Smith" }
]
}
Manage task catalogs — named groupings of tasks with optional encryption and retention policy.
uip tasks catalogs list
Optionen
Long Wert Beschreibung Folder options Folder to list catalogs in (a folder is resolved if omitted, per Concepts ). -l, --limit <number>Integer Maximum items to return.
Beispiel
assignment uip tasks catalogs list -- folder- id 42
uip tasks catalogs list --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskCatalogList" , "Data" : [ { "id" : 5 , "name" : "Invoices" , "encrypted" : false } ] }
{ "Code": "TaskCatalogList", "Data": [ { "id": 5, "name": "Invoices", "encrypted": false } ] }
uip tasks catalogs get
Argumente
Name Erforderlich Zweck <id>ja Task catalog ID.
Beispiel
assignment uip tasks catalogs get 5 -- folder- id 42
uip tasks catalogs get 5 --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskCatalogDetails" , "Data" : { "id" : 5 , "name" : "Invoices" , "encrypted" : false } }
{ "Code": "TaskCatalogDetails", "Data": { "id": 5, "name": "Invoices", "encrypted": false } }
uip tasks catalogs create
Optionen
Long Wert Erforderlich Beschreibung --name <name>string ja Catalog name. --description <text>string nein Catalog description. --encryptedMarkieren nein Encrypt task data in this catalog. Immutable — cannot be changed by catalogs update later. --retention-action <action>Delete | Archivenein What happens at the retention limit. Any other value fails client-side. --retention-period <days>Integer nein Retention period in days. --retention-bucket-id <id>Integer nein Storage bucket ID, used when --retention-action Archive.
Beispiel
assignment uip tasks catalogs create -- name Invoices -- retention- action Archive -- retention- period 90 -- retention- bucket- id 3 -- folder- id 42
uip tasks catalogs create --name Invoices --retention-action Archive --retention-period 90 --retention-bucket-id 3 --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskCatalogCreated" , "Data" : { "id" : 5 , "name" : "Invoices" } }
{ "Code": "TaskCatalogCreated", "Data": { "id": 5, "name": "Invoices" } }
uip tasks catalogs update
Merges — only the flags you pass change. At least one of --name/--description/--retention-action/--retention-period/--retention-bucket-id is required; calling with none fails before any file/network access. --encrypted cannot be changed here.
Argumente
Name Erforderlich Zweck <id>ja Task catalog ID.
Optionen
Same set as create minus --encrypted.
Beispiel
assignment uip tasks catalogs update 5 -- name "Invoices v2" -- folder- id 42
uip tasks catalogs update 5 --name "Invoices v2" --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskCatalogUpdated" , "Data" : { "id" : 5 , "name" : "Invoices v2" } }
{ "Code": "TaskCatalogUpdated", "Data": { "id": 5, "name": "Invoices v2" } }
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Beschreibung -l, --limit <number>Integer Maximum items to return. Folder options Folder the task lives in.
Beispiel
assignment uip tasks comments list 123 -- folder- id 42
uip tasks comments list 123 --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskCommentList" , "Data" : [ { "id" : 1 , "text" : "Looks good" , "createdBy" : "alice" } ] }
{ "Code": "TaskCommentList", "Data": [ { "id": 1, "text": "Looks good", "createdBy": "alice" } ] }
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Erforderlich Beschreibung --text <text>string ja Comment text. Empty string is rejected. Folder options nein Folder the task lives in.
Beispiel
assignment uip tasks comments add 123 -- text "Escalating to finance" -- folder- id 42
uip tasks comments add 123 --text "Escalating to finance" --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskCommentCreated" , "Data" : { "id" : 2 , "text" : "Escalating to finance" } }
{ "Code": "TaskCommentCreated", "Data": { "id": 2, "text": "Escalating to finance" } }
Set or clear the labels (tags) on a task in one call — this is a full replace, not a merge; pass every label you want to keep.
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Erforderlich Beschreibung --labels <json>JSON array ja Labels to set, e.g. [{"name":"region","displayName":"Region","displayValue":"EMEA"}]. Pass [] to clear all labels. Must be a JSON array — a non-array value fails client-side. Folder options nein Folder the task lives in.
Beispiel
assignment uip tasks labels 123 -- labels '[{"name":"region","displayName":"Region","displayValue":"EMEA"}]' -- folder- id 42
uip tasks labels 123 --labels '[{"name":"region","displayName":"Region","displayValue":"EMEA"}]' --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskLabelsSaved" , "Data" : { "taskId" : 123 , "labels" : [ { "name" : "region" , "displayName" : "Region" , "displayValue" : "EMEA" } ] } }
{ "Code": "TaskLabelsSaved", "Data": { "taskId": 123, "labels": [{ "name": "region", "displayName": "Region", "displayValue": "EMEA" }] } }
Edit a task's title, priority, catalog link, and record a note with the edit. Merges — only the flags you pass change; at least one is required.
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Beschreibung --title <title>string New title. --priority <priority>Low | Medium | High | CriticalNew priority. An out-of-set value fails client-side, naming the valid set. --catalog-id <id>Integer Associate a task catalog. Mutually exclusive with --unset-catalog. --unset-catalogMarkieren Remove the task's catalog association. Mutually exclusive with --catalog-id. --note <text>string Comment recorded alongside the edit.
Beispiel
assignment uip tasks metadata 123 -- priority High -- note "Escalated per manager request" -- folder- id 42
uip tasks metadata 123 --priority High --note "Escalated per manager request" --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskMetadataEdited" , "Data" : { "taskId" : 123 } }
{ "Code": "TaskMetadataEdited", "Data": { "taskId": 123 } }
Read or write a task's underlying form/business data object.
uip tasks data get
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Beispiel
assignment uip tasks data get 123 -- folder- id 42
uip tasks data get 123 --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskData" , "Data" : { "invoiceNumber" : "INV-001" , "amount" : 250.0 } }
{ "Code": "TaskData", "Data": { "invoiceNumber": "INV-001", "amount": 250.0 } }
uip tasks data save
Argumente
Name Erforderlich Zweck <task-id>ja Task ID.
Optionen
Long Wert Erforderlich Beschreibung --data <json>JSON-Objekt ja Task data to save. Must be a JSON object (not an array or scalar) — anything else fails client-side.
Beispiel
assignment uip tasks data save 123 -- data '{"invoiceNumber":"INV-001","amount":250.0}' -- folder- id 42
uip tasks data save 123 --data '{"invoiceNumber":"INV-001","amount":250.0}' --folder-id 42
Datenform (--output json)
assignment { "Code" : "TaskDataSaved" , "Data" : { "taskId" : 123 } }
{ "Code": "TaskDataSaved", "Data": { "taskId": 123 } }