> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.itential.com/itential-cloud/studio/workflows/tasks/configure-manage-tasks/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.itential.com/_mcp/server. # Configure and manage tasks > How to configure, modify, copy, delete, retry, and swap tasks on the Studio canvas. To configure a task on the canvas, double-click a task on the canvas to display information about that task in a panel on the right. Each **Task** panel contains a Data, Advanced, and Details tab. * The **Data** tab contains input and output variables. * The **Advanced** tab contains the Access Control, Run Window, and Retry Task configurations. * The **Details** tab contains a description of the task that can be edited as well as a link to the API Documents page. Tasks from the canvas make calls to actions that perform specific and discrete activities to implement business logic. They take input arguments and return output variables. The inputs and outputs for the task are visible in the Edit dialog under the **Incoming** and **Outgoing** tabs of the dialog. In the event an error occurs, the task may return an error variable, which is visible under **Error**. ![]() ## Configure task properties ### Incoming parameters Task information is split between three tabs. * **Data**: Input variables for the task. * **Advanced**: Configurable options not directly related to input. * **Details**: The task description. ![]() | Label | UI element | Description | | ----- | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | Incoming (Tab) | Required (mandatory) parameters are marked with an asterisk. Variable: The argument name. Type: Data type (boolean, string, number, array, object). [Reference task](#reference-task-options): Defines the data source. Options include: `job`, `static`, a prior task. [Reference variable](#reference-variables): Value is assigned from the defined reference task. | | 2 | Actor (for automatic tasks only) | Execute automatic tasks by the system or a user by setting the Actor field. Itential (Pronghorn): The system executes the automatic task. job: Execute the automatic task as the user that started the job. Any previous manual task: Execute the automatic task as the user that worked a previous manual task. | | 3 | Run Window | Restrict when an automated task will run by specifying a schedule. | | 4 | Description | Enter a brief task description in the optional **Description** field. | Avoid changing to another task's input variable, which could create variable type mismatches and other errors. #### Reference task options | Option | Description | | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | job | A global variable. Job variables are set at the time a job is started or when a task's outgoing data is copied to a job variable. Job variables are visible to all tasks defined in the automation. Job variables are mutable. Some job variables are always present; others are defined by the collection of input job variables between all tasks in the automation. | | static | A constant; a value defined within the task properties. | | any prior task | Present in the current automation (listed by name in the dropdown). | #### Reference variables | Reference task | Reference variable | | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | job | Defaults to the same name as the task's parameter. Dropdown shows all job variables, including input arguments for every task whose reference task is the job. To set a custom job variable name, click **Edit** and type the new name in the **Reference variable** field. Job variable names must adhere to the naming conventions in the developer [guide](/itential-platform/developer-guide/naming-conventions). | | static | Static value entered in the **Reference variable** field. | | a prior task | Name of an output variable or error from the selected prior task. | #### Task query Task queries let you extract a nested property from an upstream task's output directly on an input field using dot or bracket notation syntax. It eliminates the need to add a standalone [query](/itential-platform/studio/tasks/reference/query) task to the canvas for common data retrieval operations. Task queries support data retrieval from objects and arrays. Filtering and manipulation are not supported. Use the [query](/itential-platform/studio/tasks/reference/query) task for those operations. To configure a query on an input field: #### Enable query On the input field you want to configure, select **Enable Query**. #### Enter the query Enter a dot-notation query to the nested property you want to extract from the upstream task output. Bracket notation is also supported for array access, as well as properties with special characters like `.`. | Syntax | Example | Description | | ------------ | ------------------------------ | ------------------------------- | | Dot notation | `response.body.status` | Access a nested object property | | Array index | `devices[0]` | Access an element by index | | Combined | `response.devices[0].hostname` | Navigate nested structures | A missing key or index at the specified query routes the task to its error transition with a descriptive error message identifying the query as the cause and which inputs had a failed query. A null value at a valid query is a valid result and does not cause a failure. | Scenario | Behavior | | -------------------------------------- | ------------------------------------------------------------------------ | | Query resolves to `null` | `null` is passed as the input field value and the task proceeds normally | | Query not found (missing key or index) | Task routes to its error transition | Enabling task queries is optional. Tasks without configured queries behave identically to their pre-6.4 behavior. For information about using inline queries in Operations Manager, see [View query results](/itential-platform/operations-manager/jobs-and-job-metrics#view-query-results) #### Manual tasks and access control For **manual** tasks only, use **Groups**, located under the **Advanced** tab and in the **Access Control** dropdown, to restrict who is authorized to work the task by assigning one or more groups. * Type "Administrators" in the **Groups** field. Matching group names will appear in a list after you begin typing. * Click the correct group name to add that group to the task's groups. The group will not be added unless it is selected from the list. * Add as many groups as desired. ![](/_fern-img/bc756a750c2844ee7439428edaeea6fd46f6570cd720eb369d9b82f8a3980f9f.webp) ### Outgoing parameters Configurable options in the task output are referenced below. ![](/_fern-img/79b2a33b0fb1c372d835d612ea5f85b960c5ca943d5e795802b096da67d36618.webp) | Label | Outgoing parameter | Description | | ----- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | 1 | Variable | The task's return variable; the variable which is made available to any subsequent task in the workflow. Outgoing variables are immutable. | | 2 | Job Variables | To promote the task's return variable to a job variable, check the **Store Output as Job Variables** box. This copies the outgoing variable's value to a job variable. Job variables are similar to global variables; they are available to every task in the job. | | 3 | Job Variable Names | Defaults to the same name as the task's return variable. To set a custom name for the return variable, type the new name in the **Job Variable Name** field. Job variable names must adhere to Itential Platform naming conventions. | ### Error parameters Task error variables are referenced below. ![](/_fern-img/08263edfd0c177a0220cbc44e0d548bc957a2e21007623524611ddcfbfec9124.webp) | Label | Error parameter | Description | | ----- | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | Variable | The task's error variable, which is returned in the event of an error. | | 2 | Job Variables | To promote the task's error variable to a job variable, check the **Store Output as Job Variable** box. This copies the error value to a job variable. Job variables are similar to global variables; they are available to every task in the job. | | 3 | Job Variable Names | To set a custom name for the error variable, type the new name in the **Job Variable Name** field. Job variable names must adhere to Itential Platform naming conventions. | ### Mask variables Variable masking hides sensitive data from operators who view workflows in Operations Manager. To enable masking, open the **Task dialog** and toggle **Mask** to **On**. When you mask a variable, its value displays as asterisks (`***`) in operator-facing interfaces, preventing operators from viewing the actual data. The feature protects any view where operators can see workflow execution data, including Operations Manager views. ![](/_fern-img/b73a12a9c6631dadadc2c97f286f73e5f8b70b901f4cf489252889b1e17a0e6a.webp) #### What masking doesn't do Masking is not a security or encryption feature. The system does not: * Encrypt data in the database * Delete or hash data * Provide secure password or secrets storage * Function as a secrets vault or password manager * Protect data at rest on the server For secure secrets management, use dedicated solutions like [HashiCorp Vault](/itential-platform/secrets/hashicorp/overview) or [CyberArk Central Credential Provider](/itential-platform/secrets/cyberark/use). If you need encrypted storage of credentials, API keys, or other sensitive data, implement a proper secrets management solution rather than relying on variable masking. ### Mask JST tasks For JST tasks, you must mask all outgoing variables or none of them. ![](/_fern-img/0c1dfecf50fe9ea07f38a74b9375a1af6ad52f1f55e650ea5a3fa5d14ea4c6f4.webp) ### Find adapter IDs **Adapter IDs** can be found under the **Advanced** tab in the **Task Options** dropdown. ![](/_fern-img/eae61853c11a4aa27111b138af6fec32478615b06bdce4cf4987e70fbb2562ac.webp) ## Modify a task #### Open the task dialog Double-click a task on the canvas to open the **Edit task** dialog. #### Update properties Update the appropriate task properties. #### Save your changes Click the **Save** button to retain your changes. ## Copy a task #### Copy the task Right-click the task to view the pop-up menu, then click **Copy**. #### Paste the task Right-click anywhere on the canvas and click **Paste here** from the pop-up menu. A copy of the task is pasted onto the canvas. **Cmd + C** and **Cmd + V** can be used to copy and paste, respectively. Holding the **Option** key and dragging can also be used to duplicate a task. ## Delete a task #### Select the task On the Studio canvas, select the task you want to delete. #### Delete the task Click the **Delete** button, or double-click the task and choose **Delete** from the pop-up menu. #### Save Click the **Save** button in the title bar. ## Spread tasks To spread tasks out on the canvas for better viewing and management: #### Open the Fit Window option Click the **Fit Window** button in the upper-right corner of the canvas. An option to **Spread Tasks** will appear. #### Adjust spacing Move the slider to enlarge or shrink the area between tasks on the canvas. ![](/_fern-img/21a0dfc3305bfbe054ef6e6f17f6be525cae8d78dd195821cb716f63bbcedd6a.webp) ## Use recent tasks The 10 most recent tasks moved from the task palette to the canvas are stored under the **Recent Tasks** icon for quick access. Click the icon for **Recent Tasks** and a dropdown displays the 10 most recent tasks added to the canvas. From the **Recent Tasks** dropdown, each task can be dragged and dropped onto the canvas to use again as needed. Copying, pasting, or duplicating tasks already on the canvas will not add them to the **Recent Tasks** dropdown. Any task displayed in the **Recent Tasks** dropdown can be removed by clicking the **X** to the right of the task. ![](/_fern-img/9ce7bbc5b8a54e3369d65cf22f5ea7d1dc3a3e0dacf653cefd532f48a14a4146.webp) ## Retry a task From the Studio canvas, a task can be set up to allow an operator of a job to retry it. Two types of task retry are available: Automatic and Manual. * **Automatic Retry**: Configured on the canvas with options for when to retry, how often, and whether there should be a delay between retry attempts. * **Manual Retry**: Available within Operations (Job) Manager; to enable this capability, the automation designer must have **Retry Task** set to `true`. To specify the retry settings on the canvas: #### Open the Advanced tab Open the **Task Details** dialog and click the **Advanced** tab. Expand the **Retry Task** dropdown. #### Enable retry Toggle **Enable Retry Task** to "on". Select the **Automatically Retry Task** checkbox if you want the task to retry automatically without user intervention. #### Configure retry settings Configure the **Retry** settings using the table below. | Retry setting | Description | | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Retry On | Select a value from the dropdown to set what conditions allow task retry to occur. | | Number of Retry Attempts | The number of times to retry a task before the workflow must continue running. Default value is `10`. Use caution when increasing this value — there is no upper limit on retry attempts. | | Retry Delay | The number of seconds between retry attempts. | ![](/_fern-img/95e696e708db9305217e1e38d8211551dc74956fd19429047524e395e42a4aa8.webp) After running the workflow, you can manually retry a task by accessing the job in Operations Manager (**Itential Platform > Operations Manager > Jobs**) and clicking the **Retry** button in the **Job Details** panel, located in the vertical dots menu of the job. You will be presented with a **Retry Task** modal that contains a previous iteration of retry values. From this modal, you can provide new inputs on the retry. After entering the new inputs, click **Continue Job**. ![](/_fern-img/ba8c9f08f3f7dd18a8e81f2357608790f1edd4c61b3e1f5f9e043dda807c5a8d.webp) ## Swap a task Tasks on the canvas can be swapped without having to delete another task or the transition that connects to the task being swapped. #### Open the task panel Double-click the task on the canvas to display the task panel. #### Open the swap task palette In the upper-left corner of the task panel overlay, click the **Swap Task** icon to open a simplified version of the task palette. ![](/_fern-img/cb45dea08fc72bd7b32b60e641c53ce0b7dd2e34dd6c86f5f993cb2b1f5354d6.webp) #### Select a replacement task Locate the replacement task via the task filter, or scroll through the list of tasks. Click on the replacement task to put it in focus and enable the **Confirm Swap** button at the bottom of the panel. #### Confirm or cancel the swap Click **Confirm Swap**. The replacement task will appear in place of the original task on the canvas. Click **Cancel Swap** to revert back to the original task. ![](/_fern-img/8578d0bdc98c872784727e750dd2a4a3c5a854ed4d47f530d984836b46a4a2b8.webp) #### Retain task data (optional) Any data under the **Advanced** tab of the original task will be retained in the swapped task. ![](/_fern-img/1443ab2b0d8d566c2e3eaa052ba0ec1a125421b4c4e0117760a19b31c3415266.webp) If the swapped task contains similar variables to the original task, select the **Retain Task Data** checkbox to carry over any relevant data that is applicable. If the swapped task is a completely different type of task, the variables will not be carried over. ![](/_fern-img/558946835f9cb6b26ad6defabdb13bb63d4a4844541e18e356f9545bc953a1c7.webp) ## Restrict an automated task with a run window You can restrict when an automated task will run by specifying a schedule. This is also defined as setting the **Run Window** for a task, which means the task will not run (once it is time to run) if the current time falls outside the run window. #### Open the Advanced tab In an open automation, double-click an automated task to open the **Edit task** dialog. Click the **Advanced** tab and expand the **Run Window** dropdown. #### Enable the run window Toggle the **Enable Run Window** switch to open the schedule options. #### Select a run window mode Select an option from the **Run Window Mode**: * Select **Static** to statically define the task's run window. * Select **Job** to pass the schedule at run time through a job variable, then configure the properties. * Select **Task** to define the data source. Options include: `job`, `static`, or any prior task in the current automation. #### Configure the schedule Enter the **Window Start** and **Window End** time in 24-hour format (HHMM) relative to the server's configured timezone. Select the days on which the task should run. The selected buttons will turn from white to blue. The selections are automatically saved in the task. ![](/_fern-img/b7bb6cc3e17e57ec80796e9786ccc099f8823e3a6c75cb0a57a11b8242c227a1.webp) > How to configure, modify, copy, delete, retry, and swap tasks on the Studio canvas.