integration-service
latest
false
UiPath logo, featuring letters U and I in white

Integration Service user guide

Last updated Dec 18, 2025

Box authentication

UiPath supports the following authentication types for Box. For more information, refer to the Box authentication documentation.

Authentication TypeDescriptionBest For
OAuth 2.0 Authorization CodeUser logs in via Box and grants API access.Individual user access (attended or personal automation).
OAuth 2.0 Client CredentialsNon-interactive service-to-service authentication.Service-to-service access within the user’s workspace.
Bring Your Own OAuth 2.0 AppUses your own OAuth app with UiPath’s callback URL.Customers managing their own Box app and keys.
Personal Access Token (PAT)Uses a Box JWT private key & enterprise/user ID.Enterprise-level, server-to-server integrations requiring app-only or enterprise-wide access without user interaction.

Authentication types details

OAuth 2.0 Authorization Code

FieldDescription
OAuth API KeyBox Client ID.
OAuth API SecretBox Client Secret.
ScopeSelect the scopes configured in your Box App.

OAuth 2.0 Client Credentials

FieldDescription
OAuth API KeyBox Client ID.
OAuth API SecretBox Client Secret.
Subject Type"Enterprise" or "User"
Enterprise ID / User IDBox enterprise ID or Box user ID.
ScopeMust match scopes configured in Box.

Bring Your Own OAuth 2.0 App

FieldDescription
OAuth API KeyBox Client ID.
OAuth API SecretBox Client Secret.
ScopePredefined or custom Box scopes.
Important:

Configure this redirect URI in your Box app: https://{baseURL}/provisioning_/callback (for example, https://cloud.uipath.com/provisioning_/callback).

Personal Access Token (PAT)

FieldDescription
OAuth API KeyBox Client ID from the Box Developer Console.
OAuth API SecretBox Client Secret from the Box Developer Console.
ScopeScopes selected in Box and required for automation.
JWT AudienceExample: https://api.box.com/oauth2/token
JWT Base64 Encoded KeyYour Box app Base64-encoded private key from the JWT app configuration.
JWT IssuerThe Box app Client ID, used as the JWT iss claim.
JWT Sub TypeMust be enterprise or user based on desired impersonation target.
JWT SubjectThe Enterprise ID (if sub type = enterprise) or User ID (if sub type = user).

Creating a Box app

Before connecting UiPath to Box, you must create an application in the Box Developer Console. For more information, refer to the Box Developer Documentation.

  1. Open Developer Console
  2. Select Create New App
  3. Choose one of the following depending on your intended authentication type:
    • OAuth 2.0 (User Authentication) → used for Authorization Code & BYO OAuth
    • OAuth 2.0 with Client Credentials → used for Client Credential flows
    • OAuth 2.0 with JWT → used for PAT in UiPath IS

After creating the Box app, collect:

  • Client ID
  • Client Secret
  • App Scopes
  • Private Key (JWT apps only)
  • Enterprise/User ID
Important:

For Bring Your Own OAuth 2.0 App, add UiPath callback URL to your Box app: https://{baseURL}/provisioning_/callback (for example, https://cloud.uipath.com/provisioning_/callback).

Understanding Box scopes

Box requires explicit permission selection known as “scopes”. The following table lists the common predefined scopes for Box apps.

ScopeDescription
root_readonlyRead-only access to all content the user/account can access.
root_readwriteFull read/write access to files and folders.
manage_groupsManage Box groups.
manage_enterprise_propertiesManage enterprise metadata and properties.
manage_data_retentionConfigure retention policies and legal holds.
sign_requests.readwriteCreate and manage Box Sign requests.
manage_app_usersManage application users.
manage_managed_usersManage enterprise managed users.

Your Box Developer Console must reflect the same scopes that you select while creating the connection. For more details on scopes, please refer to Scopes in Box documentation.

How to prepare the Box private key

Step 1 — Download the private key

Download the Box app JSON file that contains the encrypted_private_key and passphrase.

Step 2 — Decrypt using passphrase

If the key is encrypted, decrypt it:

openssl pkcs8 -inform PEM -in private_key.pem -out decrypted_key.pem -passin pass:YOUR_PASSPHRASE
openssl pkcs8 -inform PEM -in private_key.pem -out decrypted_key.pem -passin pass:YOUR_PASSPHRASE

This produces the following:

-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----
-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----

Step 3 — Remove PEM headers/footers

Delete these two lines entirely:

-----BEGIN PRIVATE KEY-----
-----END PRIVATE KEY-----
-----BEGIN PRIVATE KEY-----
-----END PRIVATE KEY-----

Step 4 — Remove all newlines and whitespace

Make the key one single continuous line, no spaces, no line breaks.

Result example: MIIG/wIBADANBgkqhkiG9w0BAQEFAASCBK...

Step 5 — Base64-encode the cleaned key

Encode the single-line key:

Linux/macOS: echo -n "CLEANED_KEY" | base64

PowerShell: [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("CLEANED_KEY"))

Paste the resulting Base64 output into: JWT Base64 Encoded Key. For more information, refer to the Box authentication documentation.

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.