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

Maestro user guide

Last updated Aug 12, 2025

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

Table 1. 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'."

Table 2. 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.

  • Agent properties configuration
  • Agent execution modes
  • Inputs and outputs
  • Input and output examples

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.