maestro
latest
false
UiPath logo, featuring letters U and I in white

Maestro user guide

Last updated Nov 21, 2025

Integrating systems and data

Managing files with Data Fabric

In UiPath Maestro™, files are managed through Data Fabric (previously called Data Service). Every time a file is downloaded from a source (such as an email attachment or a cloud storage provider), the file is uploaded to an entity in Data Fabric that supports file storage.

The file is then referenced using a Data Fabric reference, a triplet containing:

  • EntityName
  • RecordId
  • FieldName

This reference allows the file to be used anywhere in your agentic process.

Prerequisites

Before using files in Maestro, make sure that:

  • Data Fabric is enabled in your organization or tenant.
  • An entity with a file-supporting field is configured.

No additional fields are required beyond those automatically filled by Data Fabric, when a record is created.

Example use case

This example shows how to download a file from Box, and send it as an email attachment.

  1. Download the file
    • Configure a Send Task to run a Download File activity from the Box connector.
    • Select the file you want to download.
    • Set the File resource output using the Data Fabric editor. Choose the Entity and Field that support files.


    When executed, the activity will return a Data Fabric reference (EntityName, RecordId, FieldName) pointing to the new file record in Data Fabric.
  2. Send the file by email
    • Configure another Send Task using the Outlook connector's Send Email activity.
    • Attach the file by referencing the RecordId from the previous step in the Data Fabric editor.


After testing, you will find the RecordId available in the workflow variables.



You can also verify the file exists in the Data Fabric application by searching for the RecordId.

Important:
  • In Maestro, files are supported exclusively through Data Fabric.
  • If a file already exists in Data Fabric, you can reuse it by adding its Data Fabric reference.

Using agents in Maestro

How agents work in Maestro

Agents are represented in Maestro BPMN workflows as Service Tasks. When your process calls a Service Task, Maestro invokes the corresponding agent with the required input parameters for the specific process instance.

Agents return output data to Maestro, which is used to determine the next steps in the workflow. You can configure agents to report the tools used, decisions made, and trace data to support debugging and transparency.

Agents can be:

  • Built directly within the UiPath Platform (low-code or coded)
  • Connected via external APIs or Integration Service
  • Triggered through events or signals based on workflow logic

Watch a real-world example: UiPath Maestro: The brain behind seamless, transparent loan automation.

Connecting agents via Integration Service

UiPath Integration Service provides ready-made and custom connectors to integrate external systems into your automations:
  • Prebuilt connectors for services like Salesforce, Microsoft 365, and Google Workspace
  • Custom connector builder to expose any REST API to UiPath Platform
  • Unified credential and connection management

Use Integration Service to enable Maestro to send/receive data from agents or systems not natively hosted in UiPath. Learn more about Integration Service.

Using external agents

Maestro is vendor-neutral. You can orchestrate work across your preferred external AI agents—without rebuilding your processes—by using UiPath Integration Service connectors.

You can orchestrate:

  • Proprietary AI services
  • External decision engines
  • Microservices or bots hosted on other platforms

Maestro invokes these agents by calling REST endpoints and expects a response payload with structured data.

Connecting external agents via Integration Service

At design time, add a Service task, choose Start and wait for external agent, and configure the agent activity from the selected connector. At runtime, Maestro sends the prompt and context to the agent and waits for the response. You map that response to variables to drive gateways, assignments, and subsequent actions.

The following links show how to connect an external agent, run it from a Maestro process, and capture its output for routing and decisions:

Quick starts: API workflow integrations

Prefer Integration Service connectors when they exist. Use API workflows when you need API-level connectivity (early APIs, evolving schemas, or streaming responses). Define requests and outputs declaratively, parse JSON without custom code, and pass results into your Maestro process.

When to use which:
  • Connector: Supported system, stable schema, managed authentication, best long-term choice.
  • API Workflow: New or unsupported API, changing response shapes, or streaming-only output.
Step-by-step guides
  • Snowflake Cortex - API workflow: Handle the Cortex Agent’s streaming output, assemble it into a usable response, and return structured JSON for downstream automation.
  • Databricks Genie - API workflow: Start a conversation, poll message status until COMPLETED, extract the generated SQL (attachment_id), execute it, and return the answer.

Agent properties configuration

In Maestro, agents are treated as participants in a business process. Within a BPMN workflow, agents are represented using Service tasks, which can invoke both UiPath-hosted and external agents. Each agent task can be configured with specific input and output parameters, which allow Maestro to pass context-aware data to the agent and receive structured results in return.

Refer to Tasks in BPMN modeling for an overview of Service Tasks in Maestro.

Agent execution modes

Agent behavior is defined in the Properties panel of a Service task. You can configure the task to call a UiPath agent or an external agent, depending on your business needs.

Start and wait for agent

Use this option to invoke an agent deployed in your UiPath tenant. This includes:

  • Low-code agents created using tools like Agent Builder.
  • Coded agents developed in Python or other languages and deployed to Orchestrator.
At runtime, Maestro sends input parameters to the agent in JSON format. When the agent completes execution, it returns a response containing output values expected by the process.

Start and wait for external agent

Use this option to connect to third-party or external systems. You must specify:

  • Connector: The integration target (e.g., CrewAI, Salesforce, or another service)
  • Connection: A configured instance of the connector, representing either a specific agent or a context-specific credential set.
    Note: You can use the same agent with different permissions or behaviors by defining multiple connections.


Inputs and outputs

Inputs and outputs for agents are configured in the same way as other Maestro task types.

  • Inputs: Variables or expressions passed to the agent at runtime.
  • Outputs: Variables populated from the agent’s JSON response.
Maestro sends input parameters as a JSON payload in the format:
{
  "key1": "value1",
  "key2": "value2"
}{
  "key1": "value1",
  "key2": "value2"
}

The agent must return a JSON response using the same parameter names expected by Maestro. These values are mapped to process variables using the Output > Response section in the task's Properties panel.



Input and output examples

Example Inputs (from Maestro to Agent):

ParameterDescription
roleRole or context for the task (e.g., validation vs. summarization)
promptInstruction provided to the agent, often including process-specific data
toolsList of tools the agent may use to complete the task
user_idUnique identifier shared between the process and the agent context

Example prompt:"Complete loan validation for {loan_application_number}. Respond in JSON format using the parameter 'loan_application_status'."

Example outputs (from agent to Maestro)

ParameterDescription
conversation_idReference to the dialogue or interaction session
loan_application_statusStatus result returned by the agent
tokens_usedMetadata about resource usage
Important: To use agent output in your workflow, you must assign each output parameter to a process variable in the Output > Response configuration of the task.

Business Rules (Preview)

Business Rules allow RPA developers to store and manage Decision Model and Notation (DMN) files as part of a workflow or process diagram.

Business Rules in Orchestrator

Business Rules in Orchestrator allow you to store and manage Decision Model and Notation (DMN)-based rules. You can evaluate these rules within any agentic process using a dedicated activity. Additionally, you can modify the rules without needing to redeploy the processes that use them. This makes it easier to update and maintain your business logic dynamically.

In Orchestrator we use the following set of capabilities for storage and management:

  • Store DMN files with role base access for both users and robots
  • Versioning
  • Linking of Business Rules across folders
  • Tagging

For executing Business Rules, Maestro includes a new Business Rules task that supports DMN v1.3.

Accessing Business Rules versions

To keep track of your Business Rules, use the Version field. After you save the business rule with the uploaded DMN file, you can no longer change its version.

You can view the version of a Business Rule from the Business Rules page. To check the version, select a Business Rule, then either edit the Business Rule, or go straight to More Actions, and select View versions.

If needed, you can also download the version of a Business Rule through one of the following methods:
  • Once you upload the DMN file during the Business Rule creation, select the download icon located next to the file.
  • From the Business Rules page, on the desired Business Rule, select More Actions, then Download version. Alternatively, under More Actions, select View versions. A side panel opens, where you can select the download icon next to the version you want to download.
Business Rule links
To link Business Rules from other folders:
  1. On the Business Rules page, select Add business rule, then Link from other folders.
  2. Next, the Import Business Rule page displays a list of all Business Rules from other folders.
  3. Select one or more Business Rules to add to the current folder, then Continue, and then Link.
To manage Business Rules links:
  1. On the Business Rules page, select a Business Rule, go to More Actions, and select Manage links.
  2. In the next window, select one or more folders where to add a Business Rule, or deselect folders to remove a Business Rule.
  3. Select Update.
Executing a Business Rule
Note:

Before you execute a Business Rule, make sure you:

  • Modelled a DMN file with the help of a DMN-compliant editor.
  • Created a new Business Rule in Orchestrator by uploading the DMN file.
  1. To execute a Business Rule, open a Maestro process
  2. Add to your process a Business Rule task.
  3. Select the DMN file stored in Orchestrator as the Business Rule.
  4. Map input and output arguments according to how the DMN file is modelled.
Editing a Business Rule

To edit a business rule, you need Edit permissions on Business Rules.

  1. On the Business Rules page, select a Business Rule, then go to More Actions, then select Edit.
  2. Next, you can edit the following fields: Name, Description, Labels, Properties, and File.
    Note: After you save the Business Rule with the uploaded DMN file, you can no longer change its version.
    Note: Make sure that argument names consist only of letters, digits, and the underscore character. The names must begin with a letter or the underscore character.
  3. Select Update.
Removing a Business Rule

To remove a Business Rule, you need Delete permissions on Business Rules.

  1. On the Business Rules page, select a Business Rule.
  2. Next, go to More Actions.
  3. Select Remove.

Process Apps (Preview)

Overview

Process Apps provide business users with role-based dashboards, forms, and triage hubs to manage day-to-day operations. They enable real-time visibility into process health, helping users identify delays, inefficiencies, and escalations—all from a unified workspace across agents, robots, and people.

With Process Apps, teams can:

  • Resolve delays and SLA breaches with real-time context and guided decisions.
  • Make smarter resourcing choices to improve operational efficiency.
  • Drive faster issue resolution and better business outcomes across the organization.

Process Apps combine Maestro process orchestration and UiPath® low-code app development, giving operations teams actionable insights without switching between systems.

Prerequisites

To use Process Apps, ensure the following services are available in your Automation Cloud tenant:
  • UiPath Automation Cloud™
  • UiPath Maestro™

Get started

You can start exploring Process Apps using the UiPath TypeScript SDK and sample app resources.
Table 1.
RersourceDescription
SDK GitHubUiPath TypeScript SDK documentation
Sample React appProcess App sample
NPM packageUiPath TypeScript SDK

Example use cases

  • Triage dashboards: Track process incidents and act on escalations directly from an operations console.
  • Case and SLA management: Monitor SLAs, identify breaches, and trigger recovery processes.
  • Human-in-the-loop operations: Provide contextual forms for approvals, corrections, or exception handling.

Integration with Maestro

Process Apps connect to Maestro process and incident data to deliver real-time insight into running executions. As a business user, you can monitor instances, track KPIs, and take action on tasks in a single interface, without developer tools.

Example: A Finance Operations Process App can surface delayed invoice approvals from Maestro and allow users to approve or reassign tasks directly, without leaving the app.

Was this page helpful?

Get The Help You Need
Learning RPA - Automation Courses
UiPath Community Forum
Uipath Logo
Trust and Security
© 2005-2025 UiPath. All rights reserved.