Using the Integration System with multiple machines

Hey there,

Recently I switched from using classic Outlook/OneDrive activities to their respective integration service activities using the Non-Legacy version of UiPath Studio (23.11). This works a lot smoother, but there’s a slight problem using these connections when deploying to a production environment that uses multiple machines.

I’ve set up the connectors to OneDrive/Outlook in both production machines, so there’s two possible connections. However, when I edit the package requirements for this process, I have to choose either the connection from the one machine or the other. This means that practically I can only use one machine - the one of which I’ve set the connection as default.

There is the option for ‘Configurable by users’, however I haven’t been succesful in using that and setting up the connector through the UiPath Assistant on a target machine. Although I can select the connection in the Assistant and everything seemingly should work, it just fails to make the connection. I later saw that the documentation (Orchestrator - Managing Package Requirements) also notes that ‘Configurable by users’ isn’t to be used by unattended processes.

A possible workaround would probably be to just schedule two processes and two triggers; one for each machine (each with their own respective connection). However, in this specific case I have combined the Dispatcher and the Performer in a single process, thus replicating the work if I would fire both processes. Probably I could eleviate this by doing some internal checking of queueitems and/or jobs when kicking off the process, but this seems messy.

Are there any options I’ve overlooked or possibilities I might have misjudged?

Thanks in advance,

Yoram

Hi @yoram,

This is expected behavior.
Integration Service connections are user-based, not machine-based.
For unattended jobs, you must use one shared folder-level connection assigned to the unattended robot user/group.

“Configurable by users” works only for attended processes

Separate connections per machine won’t work for unattended execution

Recommended setup:

Single shared connection → grant access to unattended identity → all machines can run the job using the same connection.

@yoram

Ideally the idea for Integration services is to use a common authentication

but if multiple are needed based on user or machine then the approach of creating two processes is what you need to follow

cheers

Thanks for the replies @arjun.shiroya,

Would you happen to know if this is applicable to (Microsoft Graph) delegated permissions or if this is only applicable to application permissions? The permissions of our Graph/OAuth 2.0 connection are delegated through a general appID/secret/tenantID to the user account (of the machine in this case). So if the user account (of the production machine) doesn’t have access to a certain inbox/sharepoint folder, it won’t be able to make that connection.

(we did have application scope permission before, but our system admin department forced us to use delegated permissions instead).

@Anil_G
Also thank you for the reply. If the option of using a shared folder that both machines can access isn’t an option, I will create two processes and prevent the simultaneous execution of jobs through the process itself (in Studio).

1 Like

For some more context; when I create a connection (this one is in the Shared folder of our Production tenant), it is always linked to the account of the one creating the account. If the value in the ‘Connection’ column was more general, it might be workable.

But wouldn’t Outlook 365 connections be an inherit problem since one enters a specific ‘shared mailbox’ while creating such connections?

@yoram

This applies only to Microsoft Graph delegated permissions.

With delegated permissions:

The Integration Service connection runs as the user who created/authorized it

Access is limited to what that user account can access

If the user doesn’t have access to a mailbox or SharePoint folder, the connection won’t work

This is by design, not a UiPath issue.

With application permissions (which you no longer use), this limitation does not exist.

For Outlook / shared mailboxes:

The authorizing user must have explicit access to the shared mailbox

Connections will always show as linked to that user

This is the correct and expected behavior when using delegated permissions.

@yoram

Ideally the accounts used for automations would be separate right? so depending on what automation needs which connection the connections can be changed..or ideally in few setups all bots have same permissions..

so there is no limitation of number connections you can make…based on your scenario we can have more connections and segregate as needed

running dispatcher and performer together can be handled by a little different in time trigger…or ideally there need not be dependency unless something is created to run both dispatcher and performer together

cheers

Hi @yoram

  • Integration Service connections are tenant-level, not machine-specific

  • Unattended jobs cannot use “Configurable by users” (by design)

  • A process can only reference one fixed connection in package requirements

  • Use one shared service account (Outlook/OneDrive) and one connector for all machines

  • Split Dispatcher and Performer into separate processes (best practice)

  • Or duplicate the process per machine (last resort)

Hi @yoram

Integration Service connections are user-based and shared across machines, not machine-specific. For unattended processes, the “Configurable by users” option is not supported. A process can reference only one Integration Service connection, and all machines executing that job will use the same shared connection.

If different credentials are required per machine, the UiPath-recommended approach is to create separate processes, each using its own Integration Service connection.