- Overview
- Callout
- Complex Scenarios
- Credentials
- Data Service
- About the Data Service activity package
- Project compatibility
- Create Entity Record (New)
- Update Entity Record (New)
- Delete Entity Record (New)
- Get Entity Record by Id (New)
- Query Entity Records (New)
- Upload File to Record Field (New)
- Download File from Record Field (New)
- Delete File from Record Field (New)
- Create Multiple Entity Records (New)
- Update Multiple Entity Records (New)
- Delete Multiple Entity Records (New)
- Form
- Project compatibility
- Real Time Forms
- Updating form data
- Running forms using JavaScript
- Customizing Forms Using CSS
- Conditional components
- Adding multiple components on the same row in Columns
- Using the Data Table component
- Get File/Folder path
- Reading cell values from a Data Grid component
- Displaying PDF files
- Displaying images in forms
- Scrolling through Data Grids
- Using Dev Tools with forms
- Calculate form component values
- Managing dates in forms
- Opening hyperlinks inside forms
- Displaying a default tab in forms
- Displaying the full label of a component
- Searching long strings in drop-down lists
- Dynamically set form values
- About the pre 23.4 Form experience
- Project Compatibility
- Real Time Forms
- Dynamic Checkboxes
- Conditional Dropdowns
- Displaying a Default Tab
- Displaying Images
- Displaying PDF Files
- Displaying the Full Label
- Dynamic HTML Elements
- Managing Dates
- Searching Long Strings in Drop-downs
- Customizing Forms Using Local CSS Files
- Executing Do Block On Checkbox Change
- Customizing Columns Width
- Updating Form Data
- Resetting Collection Data
- Advanced Logic
- Executing Do Block on Dropdown Option Change
- Reading Cell Values From a Data Grid Component
- Conditional Components
- Scrolling Through Data Grid Components
- Using the Grid Component
- Dev Tools
- Calculated Value
- Dynamic Dropdowns
- Switching Tabs With Button Click
- Opening Hyperlinks Inside Form
- FTP
- IPC
- Persistence
- Release notes
- Project compatibility
- About the Persistence activity package
- Bulk Form Designer
- Start Job And Get Reference
- Wait For Job And Resume
- Add Queue Item And Get Reference
- Wait For Queue Item And Resume
- Wait For Form Task And Resume
- Resume After Delay
- Assign Tasks
- Create External Task
- Wait For External Task And Resume
- Complete Task
- Forward Task
- Get Form Tasks
- Get Task Data
- Get App Tasks
- Add Task Comment
- Update Task Labels
- Create App Task
- Wait For App Task And Resume
- Configure task timer
- Working with App tasks
- Building Your First Form Action
- Advanced Controls for Drop-downs
- Embedding Objects in Form Actions
- Allowing Users to Upload Files to the Storage Bucket
- Adding Advanced Logic Using Java Script
- Setting a Default Tab
- Removing the Delete button from Edit Grid using custom CSS
- Customizing Edit Grid templates
- Using buttons to trigger custom logic
- Using an External Form Layout
- Dynamically expanding form components at runtime
- Aligning the content of a form component from left to right using JSON attributes
- Sample Workflows
- Automation Ops Pipelines
- Release notes
- About the Pipelines activity package
- Project compatibility
- Activate Solution Deployment
- Analyze
- Build
- Clone
- Delete Solution Package
- Deploy Solution
- Download Package
- Download Solution Package
- Download Solution Package Configuration
- Publish Package
- Publish Solution Package
- Re-sync Solution Project
- Run Existing Test Set
- Run Tests
- Stage
- Uninstall Solution
- Update Process
- Upload Solution Package
- System
- Release notes
- About the System activity package
- Project compatibility
- Supported character encoding
- RegEx Builder Wizard
- Add Data Column
- Add Data Row
- Add Log Fields
- Add or Subtract from Date
- Add Transaction Item
- Add Queue Item
- Append Item to Collection
- Append Item to List
- Append Line
- Beep
- Break / Exit Loop
- Browse for File
- Browse for Folder
- Build Collection
- Build Data Table
- Bulk Add Queue Items
- Change Case for Text
- Change Type
- Check False
- Check True
- Clear Data Table
- Collection to Data Table
- Comment
- Compress/Zip Files
- Copy File
- Copy Folder
- Combine text
- Comment Out / Disabled Activities
- Continue / Skip Current
- Create File
- Create Folder
- Create List
- Custom Input
- Delete
- Delete File
- Delete Folder
- Delete Storage File
- Delete Queue Items
- Disable Local Trigger
- Do While
- Download file from URL
- Download Storage File
- Enable Local Trigger
- Evaluate Business Rule
- Exists in Collection
- Extract/Unzip Files
- Extract Date and Time from Text
- Extract Text
- File Change Trigger
- File Exists
- Filter Collection
- Filter Data Table
- Folder Exists
- For Each
- For Each File in Folder
- File Change Trigger V3
- Find and Replace
- Find Matching Patterns
- For Each Folder in Folder
- For Each Row in Data Table
- Format Date as Text
- Format Value
- Generate Data Table From Text
- Get Asset
- Get Credential / Get Orchestrator Credential
- Get Current Job Info
- Get Environment Folder
- Get Environment Variable
- Get File Info
- Get Folder Info
- Get Jobs
- Get Processes
- Get Row Item
- Get Transaction Item
- Get Username/Password
- Get Queue Items
- Global Variable Changed Trigger
- Input Dialog
- Invoke Code
- Invoke Com Method
- Invoke Power Shell
- Invoke Process
- Invoke VBScript
- Invoke Workflow File
- Is Text Matching
- Join Data Tables
- Kill Process
- Launch Workflow Interactive
- List Storage Files
- Log Message
- Lookup Data Table
- Manual Trigger
- Merge Collections
- Merge Data Table
- Message Box
- Modify Date
- Modify Text
- Move File
- Move Folder
- Multiple Assign
- New Item Added to Queue
- Notify Global Variable Changed
- Orchestrator HTTP Request
- Output Data Table
- Parallel
- Path Exists
- Postpone Transaction Item
- Process End Trigger
- Process Start Trigger
- Process Tracking Scope
- Raise Alert
- Read List Item
- Read Text File
- Read Storage Text
- Remove Data Column
- Remove Data Row
- Remove Duplicate Rows
- Remove From Collection
- Remove Log Fields
- Replace Matching Patterns
- Repeat Number of Times
- Repeat Trigger
- Rename File
- Rename Folder
- Report Status
- Reset Timer
- Resume Timer
- Retry Scope
- Return
- Run Local Triggers
- Run Agent
- Run Parallel Process
- Set Asset
- Set Credential
- Set Environment Variable
- Set Task Status
- Set Trace Status
- Set Transaction Progress
- Set Transaction Status
- Should Stop
- Split Text
- Sort Data Table
- Start Timer
- Start Job
- Stop Job
- Stop Local Triggers
- Stop Timer
- Text to Left/Right
- Text to Upper/Lowercase
- Time Trigger
- Trigger Scope
- Track Object
- Timeout Scope
- Update Row Item
- Update List Item
- Upload Storage File
- Wait for Download
- Wait Queue Item
- While
- Workflow Placeholder
- Write Storage Text
- Write Text File
- AddDataRow
- AddQueueItem
- AddTransactionItem
- AppendLine
- BulkAddQueueItems
- ClearDataTable
- CompressZipFiles
- CopyFile
- CreateFile
- CreateFolder
- DeleteFileOrFolder
- DeleteQueueItems
- DeleteStorageFile
- DownloadStorageFile
- ExtractUnzipFiles
- FilterDataTable
- GetAsset
- GetCredential
- GetJobs
- GetQueueItem
- GetQueueItems
- GetResourceForLocalPath
- GetRowItem
- GetTransactionItem
- InvokeProcess
- JoinDataTables
- ListStorageFiles
- LookUpDataTable
- MergeDataTable
- MoveFile
- OrchestratorHTTPRequest
- OutputDataTable
- PathExists
- PostponeTransactionItem
- ReadStorageText
- ReadTextFile
- RemoveDataColumn
- RemoveDuplicateRows
- Replace
- SetAsset
- SetCredential
- SetTransactionProgress
- SetTransactionStatus
- SortDataTable
- StartJob
- StopJob
- UpdateRowItem
- UploadStorageFile
- WaitQueueItem
- WriteStorageText
- WriteTextFile
- Testing
- Release notes
- About the Testing activity package
- Project compatibility
- Project Settings
- Add Test Data Queue Item
- Address
- Attach Document
- Bulk Add Test Data Queue Items
- Create Comparison Rule
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- Given Name
- Last Name
- Random Date
- Random Number
- Random String
- Random Value
- Verify Control Attribute
- Verify Documents Equivalence
- Verify Expression
- Verify Expression With Operator
- Verify Range
- Verify Text Equivalence
- Address
- AddTestDataQueueItem
- AttachDocument
- BulkAddTestDataQueueItems
- DeleteTestDataQueueItems
- GetTestDataQueueItem
- GetTestDataQueueItems
- GivenName
- LastName
- RandomDate
- RandomNumber
- RandomString
- RandomValue
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- VerifyExpression
- VerifyExpressionWithOperator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- VerifyRange
- Workflow Events
- Workflow Foundation

Workflow Activities
Process Tracking Scope
UiPath.Core.Activities.ProcessTracking.ProcessTrackingScope
UiPath.Core.Activities.ProcessTracking.ProcessTrackingScope
Process Tracking Scope is a System activity in UiPath that enables detailed tracking of tasks within a workflow.
The Process Tracking Scope activity can be used to track specific business sequences in UiPath Process Mining. As an RPA developer, you can mark these sequences as tasks by wrapping them in a Process Tracking Scope activity.
A task represents a specific unit of work or activity within a process. It is created by a Process Tracking Scope activity in the workflow. Tasks have a start timestamp (when the scope begins) and an end timestamp (when the scope ends). Tasks can be nested, creating parent-child relationships.
A trace is a higher-level concept that represents the entire execution of a process or a series of related tasks. Traces group and organize multiple tasks that are part of the same process execution. A trace has its own unique identifier (the trace ID), that provides context for how different tasks are related within a larger process.
In the UiPath Studio interface, you can control how tasks relate to traces using the How to track property of the Process Tracking Scope activity:
How to track option |
Trace management |
Task management |
Notes |
Example |
---|---|---|---|---|
In the current trace |
|
|
This option is useful when you want to track sequential operations that are part of a single, ongoing process within the same process context. Some activities can change the trace context:
|
An e-commerce company has a workflow that processes customer orders. The main trace starts when an order is received. Multiple Process Tracking Scopes are used for different stages: order validation, payment processing, and shipping arrangement. All these scopes use In the current trace option to keep all tasks within the same order processing trace. This allows for a complete view of the entire order fulfillment process. |
In a new trace |
|
|
This option is useful when you want to start tracking a new, distinct process or subprocess within your automation, while maintaining the ability to return to a previous trace context if needed. |
A support team uses an automation to handle customer tickets. The main workflow receives and categorizes tickets. For each ticket, a new Process Tracking Scope is created with the In a new trace option. This creates a separate trace for each customer issue, allowing for individual tracking and analysis of how each ticket is handled. It is useful for measuring response times, resolution rates, and identifying bottlenecks in handling specific types of issues. |
In an existing trace |
|
|
This option is useful when multiple automations process the same business item or object. However, these automations, however, are not directly coonected through a UiPath component, such as queues or jobs. It allows you to maintain a continuous trace of a business item journey through different, separately executed automations. |
A large corporation has a complex invoice processing system involving multiple departments. The initial trace is created when an invoice is received in the finance department. As the invoice moves through different departments (for example, verification, approval, payment), separate automations handle each step. Each department's automation uses a Process Tracking Scope with the In an existing trace option. They identify the existing trace using the invoice number as the Object ID. This allows for a complete trace of the invoice journey across different systems and departments, even though it is handled by separate automations. |
-
Task creation always happens when the Process Tracking Scope begins.
-
Task closure always happens when the scope completes, regardless of the trace option.
-
Default task status is Successful unless changed explicitly or an exception occurs.
-
Traces may need to be explicitly closed using the Set Trace Status activity if you want to mark the entire process as complete.
In the context of Process Tracking Service, an object refers to a business item processed by external systems—a way to tag and follow important items across different parts of your automated process. Objects help connect different automations that operate with the same business item.
For instance, a JIRA ticket can be considered such an object:
If you have an automation (A1) that creates a JIRA ticket, you would use the Track Object activity to define the ticket details, such as:
-
Object ID—the JIRA identifier, for example "DOC-1234".
-
Object type—"JIRA ticket".
-
Object interaction—how the automation interacts with the JIRA ticket, in this case the interaction is Created, as the automation created the ticket.
-
Object properties—properties of the JIRA ticket, in the following format:
{ "XUiPathConnectorKey": "<XUiPathConnectorKey>", // for example, "uipath-jira" "XUiPathConnectorName": "<XUiPathConnectorName>", // for example, "JIRA" "XUiPathObjectDisplayName": "<XUiPathObjectDisplayName>", // for example, "Issue" "XUiPathObjectName": "<XUiPathObjectName>" // for example, "curated_issue" }
{ "XUiPathConnectorKey": "<XUiPathConnectorKey>", // for example, "uipath-jira" "XUiPathConnectorName": "<XUiPathConnectorName>", // for example, "JIRA" "XUiPathObjectDisplayName": "<XUiPathObjectDisplayName>", // for example, "Issue" "XUiPathObjectName": "<XUiPathObjectName>" // for example, "curated_issue" }
When a different automation (A2) needs to work with the same object created by automation A1, enable Process Tracking to automation A2 with the In an existing trace option. Provide the same object details to maintain the connection between automations, so automation A2 can find and work on the tickets created by automation A1.
By tracking objects, you can follow the journey of specific business items through your automated processes, providing valuable insights for process optimization and analysis.
Adding a Process Tracking Scope in your workflow:
-
Starts a task when the scope begins (start timestamp).
-
Ends the trace when the scope ends (end timestamp).
-
Supports nested Process Tracking Scopes.
-
Inner scopes in Process Tracking Service generate child tasks, maintaining a parent-child relationship that is visible in Hierarchical Process Mining within the Process Graph.
-
Handles implicit and explicit task status:
-
Implicit task status:
-
Default status is Successful.
-
Automatically set to Failed if an uncaught exception occurs.
-
Exception details are made available in the Process Optimization App.
-
-
Explicit task status:
-
Use the Set Task Status activity to specify how the task ends.
-
Possible values: Successful, Failed, Cancelled.
-
-
-
Handles explicit trace status:
-
Use the Set Trace Status activity to specifiy how the trace ends
Possible values: Successful, Failed.
-
-
Offers three behaviors for task tracking via the How to track property:
-
In the current trace (default behavior):
-
Tracks the new task in the current trace.
-
Uses the ID of the trace generated by the current scope.
-
- In a new trace:
-
Generates a new ID for the trace.
-
Tracks the task in a new trace.
-
Requires specifying a Process name for grouping.
-
Reverts to the previous trace context after the scope ends.
-
-
In an existing trace:
-
Adds the task to a pre-existing trace.
-
Useful for linking separate automation processes.
-
Requires identifying the trace by object details and Process name.
-
-
To enable Process Tracking for a Sequence:
-
Select the Sequence in the workflow.
-
In the Properties panel, select the Process tracking checkbox.
When Process Tracking is activated, the Sequence is automatically surrounded by the Process Tracking Scope activity.
- Process tracking
-
Optional. If selected, enables the process tracking for the sequence inside the scope.
- Task name
-
Optional. Allows you to specify a name for the task created by this scope. By default, it uses the name of the contained sequence.
- How to track
-
Mandatory. Determines how the task is associated with traces. The following options are available:
- In the current trace
-
Default option. Adds the task created by the Process Tracking Scope activity to the existing trace. This option is useful when you want to continue tracking within the same process context. The task created by this scope is closed when the scope completes., whereas the existing trace remains open and continues. We recommend this option for sequential operations that are part of a single, ongoing process.
- In a new trace
-
Creates a new trace specifically for this task and any subtasks within the scope. This option is useful when you want to start a new, distinct process or subprocess. The new trace has its own unique trace ID. Upon scope completion, the new trace context reverts to the previous one, and the associated task is closed marking the end of the tracked activity. Once selected, the Process name field is displayed:
-
Process name—Specify the process you want to start in the new trace.
-
- In an existing trace
-
Adds the task to a pre-existing trace. This option is useful for connecting different parts of an automation that might not be sequential via the Track object activity. Requires identifying the trace by object details and Process name. The task created within the specified existing trace is closed when the scope completes, whereas the existing trace remains open and continues. Once selected, the following fields for trace identification are displayed:
-
Process name—Specify the process you want to start in the existing trace.
-
Object ID—Specify the object ID associated with the current task. You can use this to track an object as part of the task. This information can also help you continue the trace in a different automation.
-
Object type—Specify the object type to identify the trace ID to which you want to switch.
-
Object interaction—Select how the task interacts with the object.
-