Overview
Box is a cloud content management and file sharing service for enterprises. This guide explains how to connect your Box enterprise account to the system and manage content authorization.
To access the Data Source management page, click on the Settings → Data Source menu in the left navigation panel.
Connect to Box
To connect a new Box data source, click the Add Data Source button in the upper right corner of the Data Source list page. Then select Box from the available data source types.
Authentication Types
The system supports two authentication methods for connecting to Box:
-
CCG (Client Credentials Grant) - A simpler OAuth 2.0 flow using client credentials.
-
JWT (Server Authentication) - A more secure authentication method using JSON Web Tokens with PEM key pairs.
Connect using CCG
To connect using CCG (Client Credentials Grant), follow these steps:
-
Go to Box Developer Console and create a Custom App with "Server Authentication (Client Credentials Grant)".
-
Select "App + Enterprise Access" under Application Access and add the required scopes: Read/Write files, Manage users, Manage webhooks.
-
Authorize the app in Box Admin Console (Admin Console → Apps → Custom Apps Manager).
-
Copy Enterprise ID from Admin Console (Settings → Account Settings → Account Details).
-
Copy Client ID and Client Secret from the Developer Console configuration page.
-
In the Connect to Box dialog, select CCG (Client Credentials Grant) as the Authentication Type.
-
Enter the Enterprise ID, Client ID, and Client Secret in the corresponding fields.
-
Click the Authorize button to complete the connection.
Connect using JWT
To connect using JWT (Server Authentication), follow these steps:
-
Go to Box Developer Console and create a Custom App with "Server Authentication (with JWT)".
-
Select "App + Enterprise Access" under Application Access.
-
Configure the required scopes: Read/Write files, Manage users, Manage webhooks.
-
In the Connect to Box dialog, select JWT (Server Authentication) as the Authentication Type.
-
Click the Generate Key Pair button to generate PEM keys. The system will securely store the private key and display the public key.
-
Click Copy to copy the generated public key to your clipboard.
-
Add the public key to your Box app configuration in the Developer Console. Box will provide a Public Key ID after adding the key.
-
Authorize the app in Box Admin Console (Admin Console → Apps → Custom Apps Manager).
-
Copy Enterprise ID from Admin Console (Settings → Account Settings → Account Details).
10. Copy Client ID and Client Secret from your Box configuration page.
11. Enter all the required information: Enterprise ID, Client ID, Client Secret, and Public Key ID.
12. Click the Authorize button to complete the connection.
Form Fields
The following table describes the fields required to connect to Box:
|
Field |
Description |
Required |
|
Enterprise ID |
Your Box Enterprise ID. Max 50 characters. Must be unique. |
Yes (CCG & JWT) |
|
Client ID |
The Client ID from Box Developer Console. Max 100 characters. |
Yes (CCG & JWT) |
|
Client Secret |
The Client Secret from Box. Max 100 characters. Encrypted and stored securely. |
Yes (CCG & JWT) |
|
Public Key ID |
The Public Key ID returned by Box after adding the public key. Max 100 characters. |
JWT only |
|
Private Key |
Auto-generated by the system. Stored securely. |
JWT only (auto) |
Manage Authorization
After connecting to Box, you need to authorize users and their content to make files accessible to the system. Click on the Box data source in the list to enter the detail page, which contains two tabs: Authorization and Ingestion Status.
View Authorized Users
The Authorization tab displays a list of all authorized Box users. The table shows the User Name, Created At timestamp, and available actions. You can use the search box to filter users by name.
Add Site (Add User Authorization)
To authorize a new Box user and their content, follow these steps:
-
Click the Add Site button in the upper right corner of the Authorization tab.
-
A "Select User" dialog will appear, showing all available Box users in your enterprise.
-
Use the search box to find a specific user by name or login ID.
-
Click the Select Content button on the right side of the user you want to authorize.
-
A content selection dialog will appear with a tree view of the user's Box folders and files.
-
Navigate through the folder structure and check the boxes next to the files or folders you want to authorize.
-
Click Save to complete the authorization. The selected content will be available for ingestion.
Edit Authorized Content
To modify the authorized content for an existing user:
-
In the Authorization list, locate the user whose content you want to edit.
-
Click the Edit button (pencil icon) in the Actions column.
-
The content selection dialog will open with the currently authorized items pre-selected.
-
Add or remove items by checking or unchecking the boxes in the tree view.
-
Click Save to apply your changes.
Full Ingestion
To trigger a full ingestion of all authorized content for a user:
-
Click the Sync button (circular arrow icon) in the Actions column of the user's row.
-
The system will start processing all authorized files and folders for that user.
You can monitor the ingestion progress in the Ingestion Status tab.
Delete Authorization
To remove authorization for a user and all their content:
-
Click the Delete button (trash icon) in the Actions column of the user's row.
-
A confirmation dialog will appear asking "Remove authorization?"
-
Click Confirm to remove the authorization. All authorized content for that user will be removed from the system.
Important Notes
-
Enterprise ID must be unique: Each Box connection must have a unique Enterprise ID. You cannot connect the same Box enterprise twice.
-
Permissions required: You need the "data_source:edit" permission to add, edit, or delete authorizations.
-
Credentials are encrypted: All sensitive information (Client Secret, Private Key) is encrypted and stored securely.
-
Token management: The system automatically manages Box API tokens and refreshes them before expiration (2 minutes prior).
-
Lazy loading: The content tree uses lazy loading for optimal performance. Folders are loaded on-demand as you expand them.
-
Path tracking: When editing authorized content, the system automatically expands and displays the full path of previously authorized items.