What are background Robots? What is Front Office and Back Office Robots, How they are different from the .xaml and .nupkg files we create to run as a bot ? Can anybody Clear these terminologies?

I am trying to explore UiPath Orchestrator? Can anybody elaborate the terminologies like Background Robots, Front office Robot, Back office Robots etc.

1 Like

Hi @Akash_Metange,
In summary:

Back Office Robots:

  1. Doesn’t need human intervention
  2. Use UiPath Orchestrator to initialize them
  3. Source code is also located at Orchestrator when published

Front Office Robots:

  1. Needs human intervention
  2. Works on the same user’s desktop machine
  3. Source code is located on the same machine

UiPath Official definition:

1 Like

Hi Akash,

Please check the below points. Hope this will help you to understand.

BackGround Robots:

Front Office Robots:- they are agent-assisted (share the computer with a human employee), can execute business actions on certain triggers, and can run automated processes behind a lock screen.

Back Office Robots :- can auto-login to Windows sessions, run automated processes unattended and in batch mode. They can be started remotely from Orchestrator’s web interface or by a scheduler.

The back office web page says it uses “Orchestrator” as a server.

The front office page says it uses “Front office server” as a server.

Are those 2 different server installations, or just a different name for the same server?

Hi @octechnologist,

Yes, if you are going use Orchestrator it should be installed and configured on a specific server.

In case of Front office robots, you won’t need a server, you’ll just need the desktop computer with UiPath installed and that’s it.

1 Like

@octechnologist different name, same serwer.

Thanks. It does sound to me though that FOR will benefit from the server. This is copied from the FOR link above:

"The front office server is a central repository for processes. It manages version control and aggregates robot logs. It also provides monitoring, reporting and security capabilities. From its browser-based dashboard, dozens – or hundreds – of software robots can be deployed and monitored."

I’ve used Orchestrator to schedule BOR… but I’m left wondering what is the process for “pushing” the latest version of a given package from the server to several FOR?

Hi ,
In that case you need to manually copy the latest nuget package version (from parent machine)to the all the FOR (each machine )package folders and run.
Bit lengthy process :no_mouth:

1 Like

Somehow I’m doubting that we would be forced to perform such a manual deployment. Maybe it’s just wishful thinking?

With BOR, for instance… one simply uploads a package to a given process and selects “Use” to inform the process that the new package should be used for all future executions. Then… anytime that process runs, each BOR will receive the new package automatically whenever it is invoked to do work.

I would hope that a similar delivery mechanism is leveraged for FOR as well. My goal would be to:

  1. declare a “process” in Orchestrator (i.e. front office server) which is intended to run only on FOR
  2. associate 1 or more FOR machines to that process
  3. upload a new package to that process
  4. click the “Use” button… which would instantly PUSH this new package to all FOR associated with the process

Can anyone confirm or deny whether a deployment process like this exists for FOR?

I’m thinking that might be too narrow an outlook for enterprise work. What if I want to use centralized Assets instead of local config files? What if I want all my logs centralized instead of living on each separate FOR? What if I want an easy way to deploy a new version of the package to all FOR?

Ahhhh. After reading between the lines on a few other posts… I think I finally get it.

We don’t PUSH new packages down to multiple FOR, we PULL them.

Each FOR should be connected to Orchestrator, and as such, will see a list of Orchestrator-based processes (instead of local packages) in the system task tray’s “Available” tab.

Now… any time the FOR operator runs the Orchestrator-based process… they will always get the latest version of the package associated with that process. Having all FOR machines connected to Orchestrator (front office server) makes it easier for all FOR operators to always have the latest process/packages.

FOR Packages

1 Like

Names keep changing :). The current definition is here: attended vs unattented Intelligent Software Robots - Unattended and Attended Bot | UiPath
The old pages are to be removed.

Actually not. They’re both using the same server which helps with release management, audit, logging plus it gives you access to assets/credentials or queues.

For BO robots you would some extra features like remote control (start from the server ) or scheduling,

1 Like


From that page… in the “attended” section… this sure seems like a bit of a stretch:

“A discreet collaborator, it acts in the background while the staff continues with uninterrupted work”

I’m having a hard time imagining a human getting work done on the same computer that an attended robot is working on (web, Excel, Word, desktop apps, etc.)…

1 Like

Yes, it is a bit stretched. Though some particular processes (excel, word, browser) can really work in the background without disturbing you.

I am using the trial community edition where I am running a robot to do some data checking between Excel file and a desktop client system. The results will be written back to same Excel file. When I started running the robot directly from UiPath, it seemed to have taken control over over my laptop and I am not able to continue with my work except to wait for that particular process to complete. May I check if it is recommended to have a dedicated desktop computer with UiPath installed to run the robots I have created instead of running them on my laptop? Thanks.

Hi ,
I am using the trial community edition and trying one simple windows(WPF) and trying to execute background.But not able to get it.I tried with Simulate Type&Window Messages but not able to achieve it.
It is just login into application and insert one record and closing it.

Can you please share if any example one.


“Trying to execute background”
How you execute it? Through Orchestrator? However better create new Post for such request.