User Migration Guides | Box to Google Workspace

User Migration Guides | Box to Google Workspace


 

 


Contents


Introduction 

DryvIQ is an enterprise data integration platform that enables organizations to maximize business value and productivity from their content.  It connects disparate storage platforms and business applications together, allowing organizations to move, copy, synchronize, gather, and organize files as well as their related data across any system. DryvIQ empowers your users with unified access to the most relevant, complete, and up-to-date content—no matter where it resides.    

DryvIQ delivers a user-friendly, web-based experience optimized for PC, tablet, and mobile phone interfaces, so you can monitor and control your file transfers anywhere, from any device.   

DryvIQ’s true bi-directional hybrid/sync capabilities enable organizations to leverage and preserve content across on-premises systems and any cloud service. Seamless to users, new files/file changes from either system are automatically reflected in the other.  


How does DryvIQ Work? 

Cloud storage and collaboration platforms continue to be the driving force of digital transformation within the enterprise. However, users need to readily access the content that resides within your existing network file systems, ECM, and other storage platforms—enabling them to be productive, wherever they are.  DryvIQ is purpose-built to provide boundless enterprise content integration possibilities. The DryvIQ Platform is 100% open and provides a highly-scalable architecture that enables enterprises to meet evolving technology and user demands—no matter how complex. 

The DryvIQ platform provides: 

  • A low risk approach to moving content to the cloud while maintaining on-premises systems

  • No impact to users, IT staff, business operations, or existing storage integrations

  • The ability to extend cloud storage anywhere/any device capabilities to locally-stored content

  • Easy integration of newly acquired business storage platforms into existing infrastructures

The Engine 

DryvIQ’s bi-directional synchronization engine enables your enterprise to fully-integrate and synchronize your existing on-premises platforms with any cloud service. It empowers your users to freely access the content they need while IT staff maintains full governance and control. DryvIQ integrates with each system's published Application Program Interface (API) at the deepest level—optimizing transfer speeds and preserving all file attributes. 

Security 

DryvIQ’s 100% security-neutral model does not incorporate or use any type of proxy cloud service or other intermediary presence point. All content and related data is streamed directly via HTTPS [256-bit encryption] from the origin to the destination system(s). Additionally, DryvIQ works with native database encryption. For more information, please see DryvIQ Platform | Security Whitepaper

Analyzer | Simulation Mode

The DryvIQ analyzer is a powerful enterprise file transfer simulation that eliminates the guesswork. You will gain granular insight into your entire content landscape including its structure, usage, age, type, applicable metadata, and more no matter where the files are located (in local storage, remote offices, or on user desktops). 

Simulation mode allows you to create a job with all desired configuration options set and execute it as a dry-run. In this mode, no data transfers, no permissions are set, and no changes are made to either the source or the destination. This can be useful in answering several questions about your content prior to running any jobs against your content.

Command and Control 

Via highly-advanced web, DryvIQ Command-line Interface (CLI), RESTful API, and/or .NET interfaces, DryvIQ administrators can easily integrate systems, control interactions and behaviors, or create and control end-user experiences for advanced self-service capabilities. 

Features and Functionality 

The DryvIQ Platform enables you with complete integration and control over: 

  • User accounts 

  • User networked home drives 

  • User and group permissions 

  • Document types, notes, and file attributes 

  • Timestamps 

  • Versions 

  • Departmental, project, and team folders 

  • Defined and custom metadata 

Architecture and Performance 

The DryvIQ platform is built on a pluggable, content–streaming architecture that enables highly–automated file/data transfer and synchronization capabilities for up to billions of files. File bytes stream in from one connection endpoint (defined by the administrator) and across a customer-owned and operated network and/or cloud service. They are then streamed out to a second connection endpoint. Content can also flow bidirectionally across two endpoints rather than solely from an "origin" to a "destination."

Supported Features

The DryvIQ Platform Comparison tool allows you to compare platform features and technical details to determine which are supported for your transfer scenario. Viewing the Platform Comparison results for your integration will display a list of features of each platform and provide insight early in the integration planning process on what details may need further investigation.

The Platform Comparison tool is available through the Platforms menu options. For further information, see Platform Comparison.

Connection Setup

DryvIQ is built on a concept of connections. A connection is made to the source platform, and another connection is made to the destination platform. A job is created to tie the two platforms together. When DryvIQ connects to a content platform, it does so by using the publicly available Application Programming Interface (API) for the specific platform. This ensures DryvIQ is “playing by the rules” for each platform. 

Connections “connect” to a platform as a specific user account. The user account requires the proper permissions to the platform to read, write, update, and/or delete the content based on the actions the DryvIQ job is to perform. The connection user account should also be set up so the password does not expire; otherwise, the connection will no longer be able to access the platform until the connection has been refreshed with the new password. Most connections require a specific user account and its corresponding password. The user account is typically an email address. 

Authenticated Connections

Authenticated Connections are accounts that have been verified with the cloud-based or network-based platform when created. The connection can be user/password-based or done through OAuth2 flow, where a token is generated based on the granting authorization to DryvIQ through a user login. This authorization allows DryvIQ access to the user's drive information (files and folder) on the platform. These connections are used as the source or the destination authentication to transfer your content.

 

OAuth2 Interactive (Web) Flow

Connectors such as Box, Google Drive, and Dropbox use the OAuth2 interactive (or web) flow.

 

OAuth2 Client Credentials Flow

Connections such as Syncplicity and Google Workspace uses the OAuth2 client credentials flow.

 

SharePoint

SharePoint (all versions, CSOM) uses a custom username/password authentication model.


OAuth2 Interactive (Web) Flow

You will need the following information when creating a connection to Network File SystemBox, Dropbox, and Dropbox for Business:

  • A name for the connection

  • The account User ID (such as jsmith@company.com)

  • The password for the User ID.

Create Connections

Creating a connection in the DryvIQ Platform user interface is easy! Simply add a connection, select your platform, and enter the requested information. DryvIQ will securely validate your credentials and connect to your source content. 


Box

The Box connector in DryvIQ allows you to analyze, migrate, copy, and synchronize files to your Box account from cloud storage repositories and on-premise network file shares. The first step is to create the Box connection by providing the connection information required for DryvIQ to connect to the server. The connector can be created using a standard Box account or a Box Service Account.

 Please refer to Box Service Account for information regarding how to create a Box Service Account connection.

Even though simulation mode doesn’t move data, Box will identify activity on accounts during simulation mode. Therefore, your Box administrator should turn off Box security notifications when Box is the source connector on copy jobs or when Box is used in sync jobs. This prevents users from getting security notifications about activity on their accounts.

Create Connection | User Interface

  1. Select Connections > Add connection.

  2. Select Box as the platform on the Add connection modal.

  3. Enter the connection information. Reference the table below for details about each field.

  4. Select Sign in with Box.

  5. On the Box Customer Log In modal, enter the Email Address and Password required to log in to the Box account and select Authorize

  6. Select Grant access to Box when prompted to authorize the connection.

  7. You will see a "Connection test succeeded" message on the Add connection modal. (If you don't see this message, repeat the sign in and authorization steps above.)

  8. Select Done to finish creating the connection. 

 

Add Connection Modal - Box

 

Field

Description

Required

Field

Description

Required

Display as

Enter the display name for the connection. If you will be creating multiple connections, ensure the name readily identifies the connection. The name displays in the application, and you can use it to search for the connection and filter lists.

If you do not add a display name, the connection will automatically be named using the account owner's name. For example, Box (John Doe). If it will be useful for you to reference the connection by account, you should use the default name. 

Optional

User Type

Required

Connect as standard user

Select this option to create a standard connection to access a user's files and folders. This is the default selection.

 

Connect as account administrator

Select this option to create an administrator connection. This requires administrator privileges and grants access to all accounts within the organization. This option is often used along with impersonation to simplify transferring multiple user accounts. When connected as an administrator, the first level of folders will be user names.

 

Platform API client credentials

Required

Use the system default client credentials 

Select this option to use the default DryvIQ client application.

 

Use custom client credentials 

Select this option to use custom client credentials provided by your administrator. When selected, two additional fields will be available to enter the credentials. Your administrator can use the information provided in the following link to obtain the credentials: Box Documentation - Setting up a JWT app.

 

Client ID 

This field displays only when you select Use custom client credentials. This value will be provided by your administrator. Your administrator can use the information provided in the following link to obtain the credentials: Box Documentation - Setting up a JWT app.

Optional

Client Secret 

This field displays only when you select Use custom client credentials. This value will be provided by your administrator. Your administrator can use the information provided in the following link to obtain the credentials: Box Documentation - Setting up a JWT app.

Optional

Behavior When Deleting Items

Select the type of delete DryvIQ should perform when deleting items: Permanent or Soft. Soft delete is the default delete behavior; however, Permanent is the recommended behavior.

A soft delete marks items as a deleted. You can still access them to restore or permanently delete the items.

A permanent delete removes the items. This delete is not reversible.

Optional

 

Box Customer Log In 

 

 

Grant Access to Box 

 

 

Connection Test Succeeded

 

Features and Limitations 

Platforms all have unique features and limitations. DryvIQ’s transfer engine manages these differences between platforms and allows you to configure actions based on Job Policies and Behaviors. Utilize the Platform Comparison tool to see how your integration platforms may interact regarding features and limitations. 

Files and Folders

Below is list of Box's supported and unsupported features as well as additional file/folder restrictions. The information below the tables provides additional details about supported and unsupported features as well as best practices when using this connector. 

Supported Features

Unsupported Features

Other Features/Limitations

Supported Features

Unsupported Features

Other Features/Limitations

Version preservation 

Restricted types

Invalid characters: \  /  

Timestamp preservation

 

File size maximum: Varies
(See File Size Limits below.)

Author/Owner preservation

 

Path length maximum: n/a

File lock propagation

 

Segment path length: 255

Mirror lock ownership

 

No leading spaces in file name/folder names

Account map

 

No trailing spaces in folder names, file names, or file extensions

Group map 

 

No non-printable characters
Any non-printable ASCII characters will not be filtered by DryvIQ.

Permission preservation

 

Box has download limitations for the number of folders and files contained in one folder. Please consult Box documentation for further details.

User impersonation

 

Box accounts that do not have administrator-level access cannot remove group permissions on files during a job transfer.

Metadata map

 

Google document types natively created on Box can be moved and will maintain formatting. However, they will have the native Google file extensions (.gdoc, .gsheet, etc.).

Tags map

 

The maximum tag size in Box is 255 characters. You can enter more characters than the maximum, but Box will truncate it down to 255 characters.

Box Comments

DryvIQ does not support transferring Box comments from folders and files. 

Box Notes

DryvIQ offers the option to convert Box Notes when migrating to other platforms. The Allow Rendition option can be enabled on the Behaviors page when creating a new job.  

  • When enabled, Box Notes will be transferred to the destination as .docx files.

  • When disabled, Box Notes will be transferred to the destination in .JSON format.

Warning! Enabling renditions will cause your job to run slower since Box doesn't support native event detection for Box Note files and must crawl to detect changes.

 

Supported Box Notes Features

  • Heading 1

  • Heading 2

  • Heading 3

  • Body

  • Bold

  • Italitcs

  • Underline

  • Strikethrough

  • Font Sizes 9 thru 21

  • Text Color

  • Text Highlight

  • Alight Left, Center, Right and Justify

  • Check list

  • Bullet list

  • Numbered List

  • Uploaded image from computer

  • Image via Box link

  • Table

  • Divider Line

  • Code Block

  • Block Quote

 

 

Unsupported Box Notes Features

  • Preview image via link. Preview images are not supported when converting Box Notes to .docx files since there is not enough information available for DryvIQ to download the image.

  • Call Out

  • Table of Contents

  • Edits to the .docx file on the destination are not transferred to the original Box Note on the source for sync jobs.

 

Box Notes to SharePoint Online

When transferring Box Notes from Box to SharePoint Online without the Rendition feature enabled (transferring the Box Notes in .json format), Box Note files will transfer; however, edits to Box Notes will not be picked up, and manual intervention is required. Below is an outline of how Box Notes are handled on the initial and subsequent job runs.
 

First Job Run

  • Box Note files transfer to SharePoint Online as expected, preserving the extension.

  • The file version history transferred to the destination reflects every edit that occurred on the Box Note file in the Box source application.

Second Job Run

  • If changes are made to the Box Note file on the source in between job runs, the new version is not transferred to the destination.

Resolution

  • Perform a soft job reset and run the job again. This will re-evaluate the new edits/versions that occurred on the source Box Note file. (See Job | Reset Options for information on how to reset jobs.)

Character Sanitization

DryvIQ will sanitize file names that contain combined Unicode characters by replacing the characters with an underscore (_).

File Size Limits

The maximum file size limit for uploads to Box can be between 250 MB to 32 GB depending on your Box account. There is no maximum file size limit coded with DryvIQ. Instead, DryvIQ will evaluate the user profile and retrieve the max_upload_size parameter when the Box connection is created. DryvIQ will respect the limit provided as the maximum file size for this connection. See Box's Understand the Maximum File Size You Can Upload to Box support document for more information. 

Folder Size Limits

Box limits folder contents to 15,000 files, but recommended no more than 10,000 files to ensure performance. DryvIQ follows the 10,000 file limit per folder. If a folder has more than 10,000 items, DryvIQ will flag it with the error, “The path exceeds the maximum number of 10,000 children.” Refer to the Box Support forum for more information about Box subfolder limits.

Group Maps

When creating a group map where Box is the destination, you must provide the Box ID in order for the map to work.

Invalid Characters and Spaces

DryvIQ verifies file and folder names to identify unsupported characters based on the platform. It then replaces invalid characters with an underscore (_) so the files and folders can be transferred. 

The logic includes leading and trailing spaces in file and folder names. DryvIQ replaces the space rather than trimming it because trimming the space could cause duplicate file names. Adding the underscore ensures the name remains unique.

Owner Permissions

DryvIQ doesn’t expose owner permissions when migrating from Box. When the account running the job is the owner of the content but the user map between that account and the destination account don’t match, DryvIQ won’t grant privileges to the audit trail creator, so the owner will not be able to access the content.

Path Lengths

Box does not impose restrictions for the total path length.

Segment path lengths are limited to 255 character. Segments are delimited by a forward slash (/). For example, <max 255 characters>/<max 255 characters>.

Server System Clock

Your Box connection from DryvIQ will fail to make a successful connection if the DryvIQ server system clock time is ahead of the Box platform time because the access token will be expired by the time it is returned from Box. Therefore, you must ensure the time on the server running DryvIQ is set to the same time as the Box platform or, preferably, a minute or two behind.

The Box platform uses UNIX time; you can find the UNIX timestamp by visiting Unix Time Stamp - Epoch Converter . Enter the current UTC time of the DryvIQ server on this site to get the UNIX time of Box and the application server.   

You can find the current UTC time by doing a simple Internet search for "current UTC time" or by visiting timeanddate.com.

 

UNIX Timestamp Converter

 

Shared Links

When transferring from Box, DryvIQ will filter out links shared to specific users and log an entry in the audit log that the shared links were not preserved due to the global sharing policy.

Version Preservation

Each Box account type is limited to the maximum number of file versions that can be accessed. This means that while the UI shows as many versions as you upload, you can only access a certain number of versions. In addition to the default version maximum, account administrators can set the maximum number of file versions to save and track for the account. Both the default file version maximum and any custom version settings added to the Box account affect version transfers. Please refer to Box’s version history documentation to understand the version limitations of your account.

Create Connection | REST API

The following GET will return a Box login link. Use the link to complete logging into the account and to grant DryvIQ access to the account. 

GET {{url}}v1/connections/platforms/box/new

 

GET {{url}}v1/connections/platforms/box/new?admin_mode=1

 

Box Connection | API Job Configuration Examples

Path Example: Box connection created as standard user, no impersonation

Connect as a Box user. The path relates to my source content.

{ "name":"Simple Job", "kind": "transfer", "transfer": { "transfer_type": "copy", "source": { "connection": { "id": "{{Box_connection_AsStandardUser_sourceID}}" }, "target": { "path": "/sourceFolder" } }, "destination": { "connection": { "id": "{{OneDriveForBusiness_connection_destinationID}}" }, "target": { "path": "/Documents/destinationFolder" } }, "simulation_mode": false }, "schedule": { "mode": "manual" }, "stop_policy": { "on_success": 5, "on_failure": 5, "on_execute": 25 }, "category": { "name": "Report {Name}" } }

 

Path Example: Box Connection Created as Standard User with Impersonation

As a Box administrator, impersonate a user in the system where the path relates to their content. This requires administrator privileges to use the impersonation feature, such as administrator or co-administrator.

{ "name":"Simple Job", "kind": "transfer", "transfer": { "transfer_type": "copy", "source": { "connection": { "id": "{{Box_connection_AsStandardUser_sourceID}}" }, "impersonate_as": { "email": "user@company.com" }, "target": { "path": "/sourceFolder" } }, "destination": { "connection": { "id": "{{OneDriveForBusiness_connection_destinationID}}" }, "target": { "path": "/Documents/destinationFolder" } }, "simulation_mode": false }, "schedule": { "mode": "manual" }, "stop_policy": { "on_success": 5, "on_failure": 5, "on_execute": 25 }, "category": { "name": "Report {Name}" } }

 

 

Path Example: Box Connection created as an Account Administrator

Connect as an account administrator. The path must include the user of the content you are transferring. If impersonation is used for this scenario, permissions will be ignored.

{ "name":"Simple Job", "kind": "transfer", "transfer": { "transfer_type": "copy", "source": { "connection": { "id": "{{Box_connection_AsAdmin_sourceID}}" }, "target": { "path": "/user@company.com/sourceFolder" } }, "destination": { "connection": { "id": "{{OneDriveForBusiness_connection_destinationID}}" }, "target": { "path": "/Documents/destinationFolder" } }, "simulation_mode": false }, "schedule": { "mode": "manual" }, "stop_policy": { "on_success": 5, "on_failure": 5, "on_execute": 25 }, "category": { "name": "Report {Name}" } }

 


Google Workspace

The Google Workspace (formally G Suite) connector in DryvIQ allows you to analyze, migrate, copy, and synchronize files between your Google Workspace account and cloud storage repositories and on-premise network file shares. The first step is to create the Google Workspace connection by providing the connection information required for DryvIQ to connect to the platform/server. 

Creating connection | User Interface

  1. Select Connections > Add connection.

  2. Select Google Workspace as the platform on the Add connection modal.

  3. Enter the connection information. Reference the table below for details about each field.

  4. Test the connection to ensure DryvIQ can connect using the information entered.

  5. You will see a "Connection test succeeded" message on the Add connection modal when DryvIQ establishes connection. (If you don't see this message, verify the information you entered.)

  6. Select Done.

 

Add connection modal - Google Workspace

 

 

Field

Description

Required

Field

Description

Required

Display as

Enter the display name for the connection. If you will be creating multiple connections, ensure the name readily identifies the connection. The name displays in the application, and you can use it to search for the connection and filter lists. The maximum length is 255 characters.

Optional

Service account email

Enter the email address created during the Service Account creation process. It will resemble <service-account-name>@<project-id>.iam.gserviceaccount.com

Required

Private key

Enter the x509 private key. This is the value created when creating the new private key when creating a new Service Account in the Google IAM & admin Console. It will begin with -----BEGIN PRIVATE KEY----- and end with -----END PRIVATE KEY-----.

You can click the Choose a file on your computer link to import the key from a file on your computer. Use the file upload dialog that appears to locate the file that contains the key you want to use. 

Required

Drive Space

Select the level where the connection should be made.

My Drive: This is the default entry. When selected, the connection will be made at the "My Drive" (the highest) level of the account.

Unorganized: Selecting this option creates the connection to the unorganized content in the account. Unorganized files are files that are orphaned. This means the file exists but isn’t a part of a file structure. This happens when parent folders get deleted. These files can only be found by searching the drive for "is:unorganized owner:me." 

Shared with me: This creates the connection to the shared content (content available through the "Shared with me" menu option within the account).

 

Subject email

Enter the email address for the account whose data will be transferred. This is the "sub" claim on the JSON Web Token that DryvIQ will use to connect with Google Workspace.

If you create a job using impersonation (“run as”), that setting will override the account added here.

Required

Domain

Enter the target domain name. For example, your-domain.com.

If you do not include the domain for the Subject Email, you must include the domain in this field. This domain will then be used as the domain for the account.  

Optional

Token uri

Enter the custom authentication URI. If not supplied, the default is used - https://accounts.google.com/o/oauth2/token.

Optional

Preserve content type

Indicate if DryvIQ should try to preserve files in their original content type. This feature is mainly used for Google to Google transfers.

The default value is No. This means that an upload content type is not specified. Most files will still preserve content types. However, Google native documents and Microsoft Office files will transfer as Microsoft Office files.

Selecting Yes will preserve files in their original content type. Google native documents will transfer as Google native documents. Microsoft Office files will transfer as Microsoft Office files. 

Optional

Import as Google native documents

Indicate if DryvIQ should import Microsoft Office documents as Google documents. This feature is mainly used when transferring from any platform, such as Box to Google.

The default value is No. This means Microsoft Office files will be preserved as their original content type. 

Selecting Yes will import all Microsoft Office files as Google native documents.

Optional

Behavior when deleting files

 

Select the type of delete DryvIQ should perform when deleting items: Permanent or Soft. Soft delete is the default delete behavior; however, Permanent is the recommended behavior.

A soft delete marks items as a deleted. You can still access them to restore or permanently delete the items.

A permanent delete removes the items. This delete is not reversible.

Optional

Allow file discovery

Indicate if files with shared links should be searchable.

The default value is No. This means that only users with whom the file has been shared can find and access the file. 

Selecting Yes sets the "People can search for this file" setting in the file link settings to TRUE. This means any files with shared links can be found and accessed by any user through the search.  

Optional

Read-only Access

Specify if the connection should be created with read-only access.

The default value is No. This means the connection will be created with the full access granted to the account used to create the connection.

DryvIQ Migrate Version: 5.9.16
Release Date: March 6, 2026