UiPath Documentation
uipath-cli
latest
false
UiPath CLI user guide

Installing UiPath CLI

Installation requirements and steps for UiPath CLI on Windows, macOS, and Linux, including Node.js prerequisites and npm global install.

UiPath CLI is distributed on npm as @uipath/cli and installs the uip command globally. It runs on any platform supported by Node.js 22 or later — Windows, macOS, and Linux, on both x64 and ARM64.

Prerequisites

  • Node.js 22 or later. Node.js ships with npm, which is sufficient to install and run uip.
  • Any platform — Windows (x64, ARM64), macOS (x64, ARM64), Linux (x64, ARM64).

Check your Node version:

node --version
node --version

If Node.js is older than 22 or not installed, download it from nodejs.org or use a version manager such as nvm (macOS/Linux) or nvm-windows — or let the one-liner installer below provision Node for you.

Install

Quick install (one-liner)

The fastest way to get a working uip. It ensures Node.js, installs the CLI, runs uip skills install (auto-detecting whichever coding agents — Claude Code, Cursor, Copilot, and so on — are present on the machine), and installs the .NET SDK 8.0 and Python. Every step is idempotent, so the script is safe to re-run — it skips whatever is already in place.

# macOS / Linux
curl -fsSL https://download.uipath.com/uipath-cli/install.sh | bash
# macOS / Linux
curl -fsSL https://download.uipath.com/uipath-cli/install.sh | bash
# Windows (PowerShell)
irm https://download.uipath.com/uipath-cli/install.ps1 | iex
# Windows (PowerShell)
irm https://download.uipath.com/uipath-cli/install.ps1 | iex

Skip parts you don't want. Each option has a matching environment variable, which is useful for the piped form (bash -s -- --flag doesn't always play well with every shell):

macOS/Linux flagWindows PowerShell switchEnvironment variableEffect
--dry-run-DryRunUIP_DRY_RUNPrints what would run; changes nothing.
--skip-runtimes-SkipRuntimesUIP_SKIP_RUNTIMESSkips the .NET SDK and Python install.
--skip-node-SkipNodeUIP_SKIP_NODELeaves Node.js untouched.
--skip-skills-SkipSkillsUIP_SKIP_SKILLSSkips uip skills install.
--skip-dotnet-SkipDotnetUIP_SKIP_DOTNETSkips the .NET SDK install.
--skip-python-SkipPythonUIP_SKIP_PYTHONSkips the Python install.
# Preview first — prints what it would do, changes nothing
curl -fsSL https://download.uipath.com/uipath-cli/install.sh | bash -s -- --dry-run

# CLI + skills only, no .NET / Python
curl -fsSL https://download.uipath.com/uipath-cli/install.sh | bash -s -- --skip-runtimes
# Preview first — prints what it would do, changes nothing
curl -fsSL https://download.uipath.com/uipath-cli/install.sh | bash -s -- --dry-run

# CLI + skills only, no .NET / Python
curl -fsSL https://download.uipath.com/uipath-cli/install.sh | bash -s -- --skip-runtimes

Manual install

If you already manage Node yourself, or want just the CLI without the one-liner's skills/.NET/Python provisioning:

npm install -g @uipath/cli
npm install -g @uipath/cli

Or with another package manager:

pnpm add -g @uipath/cli
pnpm add -g @uipath/cli
bun add -g @uipath/cli
bun add -g @uipath/cli
Note:

All three package managers install the same @uipath/cli package from the public npm registry. Use whichever one your team already has in place. If your .npmrc scopes the @uipath package namespace to a private feed (GitHub Packages, an Artifactory proxy, …), that scope wins over the default registry and you'll get that feed's build instead of the public stable one. Force the public registry for this install with:

npm install -g @uipath/cli --@uipath:registry=https://registry.npmjs.org/
npm install -g @uipath/cli --@uipath:registry=https://registry.npmjs.org/

Homebrew (macOS / Linux)

UiPath maintains a Homebrew tap. This is a fully independent install path from the one-liner and npm/pnpm/bun above — Homebrew manages the uip binary and its Node.js dependency itself.

brew install uipath/tap/uip
brew install uipath/tap/uip

Or tap it explicitly first:

brew tap uipath/tap
brew install uip
brew tap uipath/tap
brew install uip

Upgrade and uninstall follow normal Homebrew conventions:

brew upgrade uip
brew uninstall uip
brew upgrade uip
brew uninstall uip
Note:

Tools installed via uip tools install <tool> are written to npm's global prefix (npm root -g), not into Homebrew's cellar — they persist across brew upgrade uip. To fully remove everything: brew uninstall uip && rm -rf "$(npm root -g)/@uipath".

The installation places the uip executable on your PATH. On Windows the uip.cmd / uip.ps1 launcher lives under %APPDATA%\npm\; on macOS and Linux the uip launcher (a small shim around node ./dist/index.js) lives under the prefix reported by npm config get prefix (commonly /usr/local/bin or ~/.npm-global/bin).

Verify the installation

uip --version
uip --version

You should see the installed version number (for example, 1.0.0).

uip --help
uip --help

You should see a list of core commands — login (with the status, tenant list, tenant set subcommands), logout, tools, skills, mcp, completion — followed by the tools that have been installed or registered on your machine.

To confirm where the uip launcher and its tools live:

npm root -g              # directory holding @uipath/cli and installed tools
npm config get prefix    # parent directory whose bin/ folder holds the uip launcher
npm root -g              # directory holding @uipath/cli and installed tools
npm config get prefix    # parent directory whose bin/ folder holds the uip launcher

First command

UiPath CLI ships with only the host and a small set of core commands. No tools are preinstalled. The first time you invoke a command whose prefix matches a tool on the auto-install whitelist, the host downloads and installs that tool from npm automatically.

For example, the first time you run an Orchestrator command, uip installs @uipath/orchestrator-tool:

uip or folders list
uip or folders list
Installing @uipath/orchestrator-tool...
✓ Installed @uipath/orchestrator-tool
...
Installing @uipath/orchestrator-tool...
✓ Installed @uipath/orchestrator-tool
...

Subsequent uip or ... invocations use the installed tool directly. You can also install tools explicitly — useful on CI runners and restricted networks — with uip tools install:

uip tools install @uipath/orchestrator-tool
uip tools install @uipath/solution-tool
uip tools install @uipath/orchestrator-tool
uip tools install @uipath/solution-tool

See Tools (plugins) for the full whitelist and Managing tools and skills for day-to-day tool management.

Controlling tool auto-install

Auto-install runs whenever the invoked verb is on the whitelist and the tool is not yet installed. CI=true has no effect on it — that variable is not consulted anywhere in the auto-install path. The real opt-out is UIPATH_CLI_DISABLE_AUTOINSTALL=true, which turns off implicit tool installs entirely, including the daily per-tool freshness check described in Versioning and stability. On stateless CI runners, without either pre-installing or setting this variable, the first command in a build downloads its tool and later commands in the same job reuse the already-installed copy — making the first command slower than subsequent ones.

To keep CI build times deterministic, pre-install the tools you use as a separate step, so every later uip call finds them already present:

uip tools install @uipath/orchestrator-tool @uipath/solution-tool
uip tools install @uipath/orchestrator-tool @uipath/solution-tool

Auto-install is a no-op when the tool is already installed, so the pre-install step is the only behavior change you need. On an air-gapped runner where you want a hard guarantee that nothing tries to reach npm mid-build, set UIPATH_CLI_DISABLE_AUTOINSTALL=true as well — a command for a tool that isn't already present then fails immediately instead of attempting a download.

Enable shell completion

UiPath CLI ships tab completion for bash, zsh, fish, and pwsh. Completion is installed from within the CLI itself:

uip completion
uip completion

In a terminal, uip completion detects your shell from $SHELL / $PSModulePath / platform, prints the target rc file it will modify, and asks for confirmation. Accept the prompt and reopen your shell — uip <TAB> now completes subcommands and options.

For scripted setup, pipe the completion script into your rc file directly:

# zsh
uip completion zsh >> ~/.zshrc

# bash
uip completion bash >> ~/.bashrc

# fish
uip completion fish > ~/.config/fish/completions/uip.fish

# PowerShell
uip completion pwsh >> $PROFILE
# zsh
uip completion zsh >> ~/.zshrc

# bash
uip completion bash >> ~/.bashrc

# fish
uip completion fish > ~/.config/fish/completions/uip.fish

# PowerShell
uip completion pwsh >> $PROFILE

Other options:

  • uip completion --print — preview the target path and the block that would be written, without modifying the filesystem.
  • uip completion --uninstall — remove the managed completion block.
Note:

Dynamic flag-value completion (for example, uip or packages upload --package-name <TAB>) is zsh-only and requires the jq utility on your PATH. Without jq, dynamic candidates are suppressed; static subcommand and option-name completion still works on all four shells.

Warning:

Re-run completion after every CLI or tool upgrade

The completion script is a static snapshot of the subcommands and option names known at the time uip completion was run. After npm install -g @uipath/cli@<new-version>, uip tools install <new-tool>, or uip tools update, re-run uip completion so newly added commands and flags are indexed:

uip completion              # interactive — refreshes the existing block
uip completion zsh >> ~/.zshrc   # or pipe into the rc file directly
uip completion              # interactive — refreshes the existing block
uip completion zsh >> ~/.zshrc   # or pipe into the rc file directly

Without a refresh, new verbs (for example, a verb added in a tool MINOR release) will not autocomplete even though they work on the command line.

Platform notes

Windows

Run commands from PowerShell, Windows Terminal, or cmd. If uip is not recognized after installation, open a new terminal window so the updated PATH takes effect, or run:

npm config get prefix
npm config get prefix

and confirm that the returned directory is on your PATH.

macOS and Linux

Most package managers place the uip executable on the default PATH. If you install npm globals into a user-local directory (as recommended — avoids sudo), make sure that directory is on your PATH. For example, with a ~/.npm-global prefix:

export PATH="$HOME/.npm-global/bin:$PATH"
export PATH="$HOME/.npm-global/bin:$PATH"

Add the line to your shell profile (~/.zshrc, ~/.bashrc, etc.) to persist it.

Behind a corporate proxy

UiPath CLI respects standard HTTP proxy environment variables for both the CLI itself and tool auto-installation:

VariablePurpose
HTTP_PROXY / http_proxyProxy for HTTP requests
HTTPS_PROXY / https_proxyProxy for HTTPS requests
NO_PROXY / no_proxyComma-separated list of hosts that bypass the proxy

Examples:

# macOS / Linux
export HTTPS_PROXY=http://proxy.example.com:8080
export NO_PROXY=localhost,127.0.0.1,.internal.corp
uip login
# macOS / Linux
export HTTPS_PROXY=http://proxy.example.com:8080
export NO_PROXY=localhost,127.0.0.1,.internal.corp
uip login
# Windows PowerShell
$env:HTTPS_PROXY = "http://proxy.example.com:8080"
$env:NO_PROXY = "localhost,127.0.0.1,.internal.corp"
uip login
# Windows PowerShell
$env:HTTPS_PROXY = "http://proxy.example.com:8080"
$env:NO_PROXY = "localhost,127.0.0.1,.internal.corp"
uip login
:: Windows cmd
set HTTPS_PROXY=http://proxy.example.com:8080
set NO_PROXY=localhost,127.0.0.1,.internal.corp
uip login
:: Windows cmd
set HTTPS_PROXY=http://proxy.example.com:8080
set NO_PROXY=localhost,127.0.0.1,.internal.corp
uip login

Proxies with basic authentication are supported by including credentials in the URL: http://user:password@proxy.example.com:8080.

Tip:

The CLI bundles a proxy-aware fetch implementation, so HTTPS_PROXY / HTTP_PROXY are honored without extra configuration on Node.js.

Telemetry

UiPath CLI sends anonymous usage telemetry to UiPath to help improve the product. No command arguments, file contents, or credentials are transmitted.

VariableBehavior
UIPATH_TELEMETRY_DISABLEDSet to 1 or true to opt out.
UIPATH_AI_CONNECTION_STRINGOverride the Application Insights connection string — for example, to route telemetry to your own instance.
# Opt out for the current shell
export UIPATH_TELEMETRY_DISABLED=1

# Or just for one command
UIPATH_TELEMETRY_DISABLED=1 uip login
# Opt out for the current shell
export UIPATH_TELEMETRY_DISABLED=1

# Or just for one command
UIPATH_TELEMETRY_DISABLED=1 uip login

Installing in CI/CD

Install the CLI as a step in your pipeline. Because uip has no tools preinstalled, either let tools auto-install on first use or pre-install them explicitly — the latter is faster on stateless runners because the tool download happens once per step rather than on every command.

GitHub Actions

steps:
  - uses: actions/setup-node@v4
    with:
      node-version: '22'

  - name: Install UiPath CLI
    run: npm install -g @uipath/cli

  - name: Pre-install tools
    run: uip tools install @uipath/orchestrator-tool @uipath/solution-tool

  - name: Authenticate
    run: uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET
    env:
      UIPATH_CLIENT_ID: ${{ secrets.UIPATH_CLIENT_ID }}
      UIPATH_CLIENT_SECRET: ${{ secrets.UIPATH_CLIENT_SECRET }}

  - name: Run CLI commands
    run: uip or folders list --output json
steps:
  - uses: actions/setup-node@v4
    with:
      node-version: '22'

  - name: Install UiPath CLI
    run: npm install -g @uipath/cli

  - name: Pre-install tools
    run: uip tools install @uipath/orchestrator-tool @uipath/solution-tool

  - name: Authenticate
    run: uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET
    env:
      UIPATH_CLIENT_ID: ${{ secrets.UIPATH_CLIENT_ID }}
      UIPATH_CLIENT_SECRET: ${{ secrets.UIPATH_CLIENT_SECRET }}

  - name: Run CLI commands
    run: uip or folders list --output json

Azure DevOps

steps:
  - task: NodeTool@0
    inputs:
      versionSpec: '22.x'
    displayName: 'Use Node.js 22'

  - script: npm install -g @uipath/cli
    displayName: 'Install UiPath CLI'

  - script: uip tools install @uipath/orchestrator-tool @uipath/solution-tool
    displayName: 'Pre-install UiPath CLI tools'

  - script: uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET
    displayName: 'Authenticate'
    env:
      UIPATH_CLIENT_ID: $(UIPATH_CLIENT_ID)
      UIPATH_CLIENT_SECRET: $(UIPATH_CLIENT_SECRET)
steps:
  - task: NodeTool@0
    inputs:
      versionSpec: '22.x'
    displayName: 'Use Node.js 22'

  - script: npm install -g @uipath/cli
    displayName: 'Install UiPath CLI'

  - script: uip tools install @uipath/orchestrator-tool @uipath/solution-tool
    displayName: 'Pre-install UiPath CLI tools'

  - script: uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET
    displayName: 'Authenticate'
    env:
      UIPATH_CLIENT_ID: $(UIPATH_CLIENT_ID)
      UIPATH_CLIENT_SECRET: $(UIPATH_CLIENT_SECRET)

Jenkins (declarative pipeline)

stage('Install UiPath CLI') {
  steps {
    sh 'npm install -g @uipath/cli'
    sh 'uip tools install @uipath/orchestrator-tool @uipath/solution-tool'
  }
}

stage('Authenticate') {
  steps {
    withCredentials([
      string(credentialsId: 'UIPATH_CLIENT_ID', variable: 'UIPATH_CLIENT_ID'),
      string(credentialsId: 'UIPATH_CLIENT_SECRET', variable: 'UIPATH_CLIENT_SECRET')
    ]) {
      sh 'uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET'
    }
  }
}
stage('Install UiPath CLI') {
  steps {
    sh 'npm install -g @uipath/cli'
    sh 'uip tools install @uipath/orchestrator-tool @uipath/solution-tool'
  }
}

stage('Authenticate') {
  steps {
    withCredentials([
      string(credentialsId: 'UIPATH_CLIENT_ID', variable: 'UIPATH_CLIENT_ID'),
      string(credentialsId: 'UIPATH_CLIENT_SECRET', variable: 'UIPATH_CLIENT_SECRET')
    ]) {
      sh 'uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET'
    }
  }
}

See CI/CD recipes for full pipeline examples including pack, publish, and test stages.

Tip:

Cache the npm global directory between builds to avoid reinstalling @uipath/cli and its tools on every run. On GitHub Actions, use actions/cache keyed on the CLI version you pin.

Installing from the GitHub npm registry

Most users don't need this section — the one-liner and manual installs above pull @uipath/cli and every whitelisted tool from the public npm registry. It exists for two narrower cases, both served by the same GitHub npm registry (https://npm.pkg.github.com):

  • Alpha/internal builds of @uipath/skills (versions like @uipath/skills@<version>-alpha.*), installed transitively when uip skills install needs a build newer than what's on public npm.
  • Preview/internal builds of a handful of core packagescli, solution-tool, codedagent-tool, orchestrator-tool — published to GitHub Packages ahead of their public npm release.

Before uip tools install (or uip skills install) can resolve one of these, configure npm to route the @uipath scope through GitHub's registry.

Create (or update) ~/.npmrc (user-level) or ./.npmrc (project-level) with:

@uipath:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GH_NPM_REGISTRY_TOKEN}
@uipath:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GH_NPM_REGISTRY_TOKEN}

GH_NPM_REGISTRY_TOKEN is a GitHub personal access token (classic) with at least the read:packages scope, authorized for SSO against the UiPath org.

export GH_NPM_REGISTRY_TOKEN=<your-pat>
npm install -g @uipath/cli
export GH_NPM_REGISTRY_TOKEN=<your-pat>
npm install -g @uipath/cli

Once configured, uip tools install and uip tools update pick up GitHub-registered packages the same way they pick up public ones.

Note:

This is unrelated to @uipath/rpa-tool, whose real source and distribution live in a separate repository (UiPath/Studio) — the GitHub npm registry described here only carries the alpha/preview builds listed above.

Running without a global install

For ad-hoc use or pipelines that prefer not to install globally, you can run the CLI through npx:

npx -y @uipath/cli <command>
npx -y @uipath/cli <command>

For example:

npx -y @uipath/cli login
npx -y @uipath/cli or folders list
npx -y @uipath/cli login
npx -y @uipath/cli or folders list

The first invocation downloads the package; subsequent invocations reuse the npm cache.

Upgrading

Note:

The CLI upgrades itself automatically, once a day. The first eligible uip command each day checks for a newer version on your configured channel (stable by default — see core.updateChannel in uip config), installs it if one exists, and re-executes your original command on the new version. It detects how you installed uip (Homebrew keg, npm, pnpm, or bun global) and dispatches the matching upgrade command automatically — brew upgrade uip for a Homebrew install, the equivalent add/install command otherwise. This self-update will never cross into a new MAJOR version on its own — that always requires an explicit uip update or a version pin. A separate check runs per tool, on that tool's first use each day, refreshing it to the latest version on the CLI's own line. Both checks are disabled entirely by setting UIPATH_CLI_DISABLE_VERSION_SYNC=true — useful for air-gapped runners or pipelines that require a fully deterministic, network-free uip invocation.

The manual commands below still work at any time — to jump to a specific version immediately, to pin, or with the daily sync disabled. Use the one matching how you installed uip:

# npm
npm install -g @uipath/cli@latest    # latest release
npm install -g @uipath/cli@1.0.0     # pinned version

# pnpm
pnpm add -g @uipath/cli@latest

# bun
bun add -g @uipath/cli@latest

# Homebrew
brew upgrade uip
# npm
npm install -g @uipath/cli@latest    # latest release
npm install -g @uipath/cli@1.0.0     # pinned version

# pnpm
pnpm add -g @uipath/cli@latest

# bun
bun add -g @uipath/cli@latest

# Homebrew
brew upgrade uip

Homebrew always upgrades to whatever version the tap currently publishes — pinning an exact version isn't a Homebrew concept, so use one of the other methods if you need to pin.

Tip:

Pin an exact version in CI. @uipath/cli follows semantic versioning, but the shape of Data in JSON output is command-specific and may change between MINOR releases (see Versioning and stability). Pinning avoids build-time surprises on pipelines that parse JSON. When you bump, re-validate scripts that depend on specific field names.

See the release notes for what changed between versions.

Upgrading the host does not automatically upgrade installed tools. To update tools:

uip tools update                        # update all installed tools
uip tools update --name <package>       # update a single tool
uip tools update --name <package> --version <version>   # pin to a specific version
uip tools update                        # update all installed tools
uip tools update --name <package>       # update a single tool
uip tools update --name <package> --version <version>   # pin to a specific version

By default, each tool version tracks the CLI's MAJOR.MINOR line, so running uip tools update after a CLI upgrade brings every installed tool into step. See Tools (plugins) for the pinning contract.

Uninstalling

Remove the CLI with the method you used to install it:

npm uninstall -g @uipath/cli
# or
pnpm remove -g @uipath/cli
# or
bun remove -g @uipath/cli
# or, if installed via Homebrew
brew uninstall uip
npm uninstall -g @uipath/cli
# or
pnpm remove -g @uipath/cli
# or
bun remove -g @uipath/cli
# or, if installed via Homebrew
brew uninstall uip

This removes the uip executable. Installed tools (@uipath/orchestrator-tool and the like) live in npm's global prefix regardless of which method installed the host, and are not removed automatically — run uip tools uninstall <tool> first, or delete $(npm root -g)/@uipath afterward to clear everything at once.

Remove credentials and data

Uninstalling the package leaves several pieces of on-disk state behind. Clean them up manually when you want a fresh start or need to decommission a machine.

Session credentials

uip login persists the session inside ~/.uipath/ in your home directory by default. When the CLI starts, it walks up from the current directory looking for a .uipath/ folder first — so a project folder can carry its own session without modifying the user's home directory. Check both locations when cleaning up:

# macOS / Linux
rm -rf ~/.uipath

# Windows PowerShell
Remove-Item -Recurse -Force "$env:USERPROFILE\.uipath"
# macOS / Linux
rm -rf ~/.uipath

# Windows PowerShell
Remove-Item -Recurse -Force "$env:USERPROFILE\.uipath"

Check each project you worked in for a local .uipath/ as well. See Sessions and credentials for the full layout.

Shell completion

If you ran uip completion, the completion block is still in your shell rc file after uninstall. Remove it before uninstalling @uipath/cli, or clean it up manually from ~/.zshrc, ~/.bashrc, or $PROFILE:

# Before uninstalling, while uip is still available:
uip completion --uninstall
# Before uninstalling, while uip is still available:
uip completion --uninstall

npm global cache

npm keeps a local cache of downloaded tarballs at the path reported by npm config get cache. This does not need to be cleaned for most users; clean it only to recover disk space or to troubleshoot a corrupt download:

npm cache clean --force
npm cache clean --force

Troubleshooting

uip: command not found after installation

The npm global directory is not on your PATH. Run npm config get prefix to see where npm placed the uip launcher, then add that directory's bin subfolder to your PATH and open a new terminal.

EACCES or permission errors on install

On macOS and Linux, avoid sudo npm install. Configure npm to use a user-local prefix once:

mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
export PATH="$HOME/.npm-global/bin:$PATH"
mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
export PATH="$HOME/.npm-global/bin:$PATH"

Then reinstall: npm install -g @uipath/cli.

Tool auto-install hangs or times out

You may be behind a proxy that blocks npm. Configure HTTPS_PROXY as described in Behind a corporate proxy, or pre-install the tools on a machine with internet access and copy the global node_modules to the target machine.

Node version too old

uip requires Node.js 22 or later. Upgrade Node.js or switch versions with nvm use 22.

See Troubleshooting for more errors and their resolutions.

Next steps

  • Quickstart — log in, list Orchestrator folders, and run a job in five minutes.
  • Your first pipeline — pack a project and deploy it from CI.
  • Authentication — interactive login, External App client credentials, federated/workload-identity, and environment-variable authentication for CI.
  • Using UiPath CLI with Coding Agents — install skills into Claude Code, Cursor, GitHub Copilot, and other supported AI coding agents.

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated