arrow-left

Only this pageAll pages
gitbookPowered by GitBook
triangle-exclamation
Couldn't generate the PDF for 105 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

Movebot Documentation

Loading...

CONNECTIONS

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Features

Loading...

Loading...

Loading...

Loading...

Using Movebot

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Platform Guides

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Troubleshooting

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Welcome

We built Movebot to make migrating and transferring data to the cloud simple and fast. Here you will find detailed documentation on how to use Movebot with different platforms.

hashtag
Discover Movebot

hashtag
Movebot Overview Video

Egnyte

Learn to connect to an Egnyte account.

hashtag
Introduction

Movebot has comprehensive support for Egnyte through the Egnyte API. Connecting to Egnyte uses OAuth to authorize.

hashtag

Block Storage

Requirements

To connect to an Egnyte account in Movebot, you will need:

  • To have access to an administrator account in Egnyte

  • To have sufficient privileges to the content you want to migrate

  • The Egnyte tenant must be licensed

hashtag
Configuration Steps

  1. Login to Movebot and create a new project or task

  2. When configuring the source or destination, choose to Create new Connection

  3. Select Egnyte from the list of available connections and set the connection name

  4. Provide your Egnyte subdomain.

circle-info

Your Egnyte subdomain is the domain prefix that you use when logging into Egnyte. For example, for the domain "movebotest.egnyte.com", you would use "movebotest"

  1. Click Connect to Egnyte and authorize the connection through the popup window.

  2. Click Save and Test connection in Movebot

  3. If the connection has succeeded, you can continue

hashtag
Supported Features

Movebot has comprehensive support for Egnyte and is well-maintained.

Feature
Supported in Movebot

User Drives

Fully Supported

Shared Folders

Fully Supported

Permissions

Fully Supported

Versions

Tags: egnyte

Connections

Learn how to connect Movebot to different storage engines.

Features Overview

Learn about using Movebot for different data lifecycles and management tasks.

Using Movebot

Learn about the different stages and capabilities of Movebot.

Platform Guides

Learn about the intricacies of common cloud platforms and how to manage them.

Troubleshooting

Troubleshoot Movebot. Learn about common issues and errors.

SharePoint Online

Learn how to connect to Sharepoint Online with Application Access

hashtag
Introduction

We are now recommending connecting to SharePoint with Application Access. This involves setting up a new application in Azure.

hashtag
Recommendations

For best results when connecting to SharePoint Online in Movebot using Application Access, we recommend the following permissions:

  • Licensed account with Application Admin or Global Admin roles.

  • SharePoint domain/hostname on hand.

hashtag
Configuration Steps

circle-check

You can also follow our .

To connect to SharePoint you'll need to create an application in Azure, then use that application to connect Movebot and SharePoint.

hashtag
Creating the application in Azure

circle-exclamation

If you're migrating data within a single tenant, create separate application registrations for the source and destination connections to avoid rate limiting.

circle-info

When creating an application in Azure it can sometimes take a few minutes for the settings to populate. If testing the connection in Movebot is producing errors, give it a minute or so and then retest.

  1. Login to Movebot and create a new project or task

  2. Choose to Create new Connection

  3. Select Sharepoint from the list of available connections and set the connection name

Enable the following Permissions:

  1. Next add the access, under Azure in the Application permissions, click API Permissions --> Add a Permission. Select Sharepoint, then Application Permissions.

Select the following permissions:

  1. Grant admin consent and finish the consent process.

Generating the client secret

Under the application configuration:

  1. Click Certificates and Secrets -- > Client Secrets -- > New Client Secret. Provide a description and Add. Copy the Secret from the "Value" Field.

  2. Return to Movebot and Paste the Secret "Value" into the appropriate field

Upload the certificates from Movebot

Finally, you will need to generate and download the client certificate from Movebot and upload it to Azure for authentication.

  1. Under Step 3: click the button Generate and Download Certificate. You should get a PEM file download from Movebot.

  2. In Azure - Click Certificates and Secrets -- > Certificates -- > Upload Certificate

  3. Upload the file created in step 1

hashtag
Video Guide

hashtag
Common Errors

Movebot supports migrations to and from SharePoint Online as part of Microsoft 365. Below is a list of common issues users encounter during SharePoint migrations, along with troubleshooting guidance and answers to frequently asked questions.

chevron-rightError: Invalid client secret providedhashtag

Cause: The client secret value is incorrect.

Resolution: Double-check that you have copied and entered the client secret value, not the client secret ID. These are often confused but are different fields in Azure.

chevron-rightError: SCP or roles claim need to be present in the token.hashtag

Cause: Required claims are missing from the token.

Resolution: Ensure all necessary API permissions are granted and that they are assigned as Application permissions, not Delegated. Also, confirm admin consent has been granted for these permissions.

chevron-rightError: Tenant "domain.com" not foundhashtag

Cause: The specified SharePoint Tenant Domain does not exist or is misconfigured.

Resolution: Verify that the tenant domain is correct. It should follow the format yourcompany.onmicrosoft.com

chevron-rightError: Application with identifier 'a323b4ba-031...' was not found in the directoryhashtag

Cause: The application’s Client ID is incorrect or the app registration is missing.

Resolution: Check that the correct Client ID is being used. Refer to Step 7 of the , to confirm you have provided the proper ID.

chevron-rightError: The certificate used to sign the client assertion is not registeredhashtag

Cause: The required certificate has not been uploaded to the application in Entra.

Resolution: Generate the necessary certificate and upload it to the registered application in Entra. Refer to "Upload the certificates from Movebot" section of

chevron-rightError: Could not find site (site-not-found)hashtag

Cause: The SharePoint domain value is incorrect or the specified site does not exist.

Resolution: Review your SharePoint configuration settings and ensure that you have specified the correct non-admin SharePoint domain. If the domain includes '-admin,' please remove it.a

chevron-rightError: User Migration Failed (user-not-active)hashtag

Cause: The user account is not currently active or fully provisioned in Microsoft 365.

Resolution: First ensure the user has an active license assigned. If the user is newly created, their OneDrive may not yet be provisioned. You can either:

  • Pre-provision the user’s OneDrive using PowerShell ().

chevron-rightError: Call was made to the default drive, which is not supported for apponly tokenshashtag

Cause: The OneDrive you are connecting to in the destination hasn't been provisioned yet.

Resolution: You will need to pre-provision your OneDrive accounts so they are active before the migration by logging into them.

You can do this in bulk following Microsofts current recommendations -

hashtag
Frequently Asked Questions

chevron-rightCan Movebot migrate data between two Microsoft 365 tenants?hashtag

Answer: Yes. Movebot supports bidirectional migrations between Microsoft 365 tenants, including full tenant-to-tenant migrations.

chevron-rightCan we restrict the app registration to only have access to specific users or sites?hashtag

Answer: No. Currently, the app registration will have access to all users and sites within the tenant. More granular access control is not supported at this time.

chevron-rightWhy does SharePoint show more storage used than Movebot?hashtag

Answer: SharePoint includes all previous versions of files in its reported storage usage. By default, Movebot only counts the most recent version of each file, which can result in lower reported storage.

chevron-rightCan Movebot migrate data from a Classic SharePoint Site to a Modern Site?hashtag

Answer: Yes. Movebot treats both Classic and Modern SharePoint sites the same. Data can be migrated seamlessly between them.

chevron-rightCan Movebot migrate custom column data between two SharePoint sites?hashtag

Answer: Yes, this functionality is now available through a beta feature. When migrating between two SharePoint sites, you can choose to enable the "Include SharePoint Column Metadata" option to preserve metadata associated with SharePoint lists.

Please note the following limitations:

  • This feature is

hashtag
Supported Features

Feature
Supported in

Tags: sharepoint

Windows File Server

Learn how to connect to a Microsoft Windows File Server with Movebot

hashtag
Introduction

Movebot supports Microsoft Windows using a lightweight agent that is installed directly on the file server, another server, or on a virtual machine.

The agent uses a shared token for authentication and communicates with Movebot's infrastructure via secure HTTPS calls. The Windows agent does not require any port forwarding or static IP addressing for migrations and is very simple to set up and run.

circle-info

We do not recommend installing the agent directly on the target file server. If possible, use a VM and connect via mapped network drives.

The agent can be run in a standalone fashion or as a service. For security reasons, we recommend not running the agent as a service during migrations.

hashtag
Requirements

To connect Movebot to Microsoft Windows, you need:

  • A suitable host to install the the agent on

  • Remote access via RDP to the host

  • An administrator account on the host

For a full list of requirements, see

hashtag
Configuration Steps

  1. Login to Movebot and create a new project or task

  2. When configuring the source or destination, choose to Create new Connection

  3. Select Microsoft Windows/Apple OSX from the list of available connections and set the connection name

hashtag
Supported Features

Movebot has comprehensive support for Microsoft Windows and is well-maintained.

Feature
Supported in Movebot

hashtag
Common Errors

Movebot supports bi-directional and tenant to tenant migrations with Windows Fileserver's. Below are common errors and questions related to scanning and migrating Windows Fileserver data.

chevron-rightError: ECONNRESEThashtag

Cause: Your outbound firewall is filtering the internet connection

Resolution: Configure your firewall to allow all outbound traffic on port 443 and 53 from the virtual machine or server running the Movebot agent.

chevron-rightError: Agent Disconnectedhashtag

Cause: The movebot agent is not longer connected to Movebot

Resolution: Check that the virtual machine running the agent is still online and the agent is running. Restart the agent and/or virtual machine if required.

hashtag
Frequently Asked Questions

chevron-rightDoes Movebot support network driveshashtag

Answer: Yes. Movebot supports migrating to and from network drives.

To migrate data from network drives make sure they are mounted/connected to the virtual machine or physical server you have installed the Movebot agent on.

chevron-rightDoes Movebot support proxy servershashtag

Answer: Yes. Movebot supports migrating data on networks with a proxy server managing network connectivity.

To configure connectivity through a proxy server -

chevron-rightDoes Movebot have Static IPs to whitelisthashtag

Answer: No. Movebot utilises dynamic IP addresses during a migration. We cannot provide you with static ip addresses or domain names to whitelist.

chevron-rightWhat ports does Movebot use for migrations hashtag

Answer: 443 and 53.

Movebot connects to the Movebot cloud via HTTPs.

chevron-rightCan I run Movebot on a desktop or laptop workstationhashtag

Answer: Not recommended

We do not recommend running the Movebot agent on a laptop or desktop. While possible, doing so can result in unpredictable performance and interruptions.

chevron-rightHow much memory and cpu resources does the agent requirehashtag

Answer: 16GB of ram and 4vCPUs minimum

We do not recommend running a migration on servers with less than above.

Tags: agent

Google Workspace Drives

Connecting to Google Workspace is fast to set up and fully supported in Movebot.

hashtag
Introduction

Movebot uses the Google Drive API with delegate access, and we provide everything you need for quick authorization in Google Admin. Connecting to Google Workspace by delegate access provides Movebot access to user data and shared drives in the Google Workspace domain and full support for migrating Google Drive content.

circle-info

To connect a personal Google Drive account see

hashtag
Requirements

To connect Movebot to Google Workspace, you will need:

  • A Google Workspace administrator account

  • To be familiar with the Google Admin Centre

  • To have access to the Shared Drives you wish to migrate

hashtag
Configuration Steps

  1. When configuring a new connection, select Google Workspace from the list of available connection types and give the connection a name

  2. Enter your Google administrator account email address

  3. Enter your domain (find this under "Manage domains" in Google Admin) .

circle-info

For detailed instructions on how to set this up, see

  1. Test the connection

hashtag
Common Errors

Movebot supports migrations of MyDrive and Shared Drive data within Google Workspace tenants. Below are common GWS Drive-specific errors, their resolutions, and answers to frequently asked questions.

chevron-rightError: invalid_request: Invalid impersonationhashtag

Cause: The admin email address specified in your Google connection is invalid or does not have sufficient permissions.

Resolution: Ensure the email address exists, is correctly entered, and belongs to a licensed Google Workspace admin user with appropriate privileges.

chevron-rightError: Bad Request. "<email address>" is not a member of this shared drive. Only members can access items in this shared drive.hashtag

Cause: Destination tenants sharing settings do not allow non-members to be assigned permissions on a Shared Drive.

Resolution: To resolve this, you can either:

  1. Add the user as a member of the Shared Drive before rerunning the migration, or

chevron-rightError: teamdrive-not-found: Could not find team drivehashtag

Cause: Movebot was unable to locate a Shared Drive with the specified name.

Resolution: This error may be caused by one or more of the following:

  • Hidden whitespace: Check for extra spaces at the beginning or end of the Shared Drive name in Google Drive.

chevron-rightError: parent-folder-not-foundhashtag

Cause: Google Drive creates folders asynchronously, which means there can be a short delay before new folders are fully available. If Movebot tries to upload a file to a folder that hasn’t been fully created yet, it triggers a parent-folder-not-found error.

Resolution: Run a Delta Migration to retry the failed uploads. By the time you run the Delta Migration, the necessary folders usually exist—allowing the uploads to complete successfully.

chevron-rightError: user-teamdrive-access-deniedhashtag

Cause: Occurs when the source or destination Shared Drive lacks the required permissions or settings.

Resolution: You must have Manager permissions on both the source and destination Shared Drives.

For Google to Google migrations, Google Docs require the following Shared Drive Settings. Ensure these are enabled on the source/destination drives, then re-run the migration or Delta Migration to complete the transfer.

hashtag
Frequently Asked Questions

chevron-rightIs it possible to migrate between two existing Google tenants using Movebot?hashtag

Answer: Yes. Movebot fully supports bi-directional migrations between Google tenants, including full tenant-to-tenant transfers.

chevron-rightWhy does the Movebot scan result show more/less data than the Google Admin Console?hashtag

Answer: The discrepancy occurs because Google and Movebot calculate storage usage differently.

  • Google Admin Console reports storage based on file ownership. It includes all files a user owns, even if they are located in folders shared with them by others.

chevron-rightWhat happens to Google Docs, Sheets, and Slides during migration?hashtag

Answer: When migrating between two Google tenants, the native Google file formats (Docs, Sheets, Slides, etc.) are retained, and everything will function the same in the destination tenant as it did in the source.

If you're migrating out of the Google ecosystem (e.g., to Microsoft 365), Google files will be automatically converted to their equivalent Microsoft Office formats (e.g., Docs → Word, Sheets → Excel).

Note: Due to limitations in the Google API, documents larger than 11MB cannot be exported into Microsoft Office formats. These files will either be skipped or need to be downloaded manually. .

chevron-rightWhy can't I see a particular Shared Drive in the list of available drives in Movebot?hashtag

Answer: Ensure that the admin user specified in the Movebot-Google connection has Manager permissions on the Shared Drive. If the Shared Drive was recently created, it can take up to 30 minutes for Google's APIs to reflect the new drive. Wait and check back later.

hashtag
Supported Features

Movebot has comprehensive support for Google Workspaces and is well-maintained.

Feature
Supported in Movebot

Tags: googledrive_domain

Overview

Learn about the different key features and use cases in Movebot

hashtag
Discover Movebot Features

Click an item below to learn more about Movebot features.

Fully Supported

Modification Retention

Fully Supported

Automatic Sanitization

Fully Supported

Data Migrations

Movebot is the fastest and easiest data migration tool on the market. Learn how to move data with Movebot.

Mail Migrations

Movebot now supports email, calendars and contact migrations as well as Data migrations. Learn about them here.

SharePoint via Application Access

Learn how to connect to SharePoint online via Application Access

circle-info

This page has moved to SharePoint Online

Tags: sharepoint

Overview

Movebot supports all of the major data platforms, learn about the details of them in relation to data migrations and Movebot

A host that meets the
  • A host that meets the operating system requirements

  • A host that meets the specification requirements

  • Movebot will provide an Agent Connection token. Copy this token and download the agent. This token is only viewable once so be sure to copy it when viewing it.
  • Login to the remote Windows file server as an administrator

  • Install the agent and launch it

  • Paste the identifier token provided in Movebot and click Connect. After a few seconds, the status indicator should change to show it's connected.

  • Return to the Movebot interface, and Click Save and Test

  • If the connection has succeeded, you can continue

  • Modification Retention

    Fully Supported

    Automatic Sanitization

    Fully Supported

    Folders

    Fully Supported

    Network Drives

    Fully Supported

    Permissions

    Source Only

    Versions

    Server Requirements
    Proxy Configuration

    Not Supported

    firewall and network requirements

    SharePoint

    Logging and Debugging

    Learn about logging and debugging with regards to Windows file servers.

    The Windows agent has a collection of logfiles that can be useful for debugging issue. Our support team might also ask for them from time to time.

    You can find these logs under C:\CouchdropCloudConnector\Logs

    Tags: agent

    Dropbox

    Transfer Execution and Cutover

    Permissions and Metadata

    Common Errors

    Windows Fileservers

    Click "Create Service Account" - this will generate a Client ID
  • Use this Client ID when configuring domain-wide delegation in the Admin console, required to allow Movebot to access necessary data for migrations. Include the following OAuth scopes:

  • Adjust the Shared Drive’s settings to allow sharing with users who are not drive members.

    These changes can be made in the Google Workspace Admin Console under the Shared Drive's access and sharing configuration.

    Special characters: /teamdriveid:<drive_id> can be used to access drives by their Drive ID instead of their name. This will avoid issues with special characters. Learn more.

  • Insufficient access: Confirm that primary and secondary admin accounts specified in your Movebot configuration have been granted Manager access to the Shared Drive.

  • Allow people who aren’t Shared Drive members to access files.
  • Allow people outside of <your_domain> to access files.

  • Movebot only scans and reports on content located within a user’s actual MyDrive. It does not include files the user owns inside folders shared with them by other users.


    hashtag
    When Google Admin shows more data than Movebot

    Scenario: Jeff shares a folder with Sarah. Sarah adds 50GB of photos to Jeff’s shared folder.

    • Google Admin Console: Reports 50GB of storage used by Sarah, because she is the file owner.

    • Movebot: Scans Sarah’s MyDrive and detects 0KB, since the data physically resides in Jeff’s folder.


    hashtag
    When Movebot shows more data than Google Admin

    Scenario: Mathias creates a Shared Folder and shares it with five colleagues. They add 20GB of data to it, but Mathias doesn’t add anything himself.

    • Google Admin Console: Reports 0KB usage for Mathias, because he doesn’t own any files.

    • Movebot: Scans Mathias’s drive and detects 20GB, since he is the owner of the Shared Folder—meaning all content within it is considered his for the purpose of migration.


    Modification Retention

    Fully Supported

    Automatic Sanitization

    Fully Supported

    Shared Drives

    Fully Supported

    User Drives

    Fully Supported

    Permissions

    Fully Supported

    Versions

    Google Drive (Personal)
    Delegating Domain Wide Authority
    Learn more

    Fully Supported

    https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.readonly, https://www.googleapis.com/auth/admin.directory.user.security
    Provide the non-admin SharePoint domain in the field required
  • Login to Entra with Appliciation Admin or Global Admin account and register a new application at https://entra.microsoft.comarrow-up-right and create a new App Registration via Identity -> Applications -> App registrations

  • Name the application. Keep the other fields as default and click Register.

  • Copy the Application ID from the "Overview" section and paste it into Movebot.

  • In Azure in the Application permissions, click API Permissions --> Add a Permission. Select Microsoft Graph, then Application Permissions.

  • The thumbprint in Azure should match the one shown in Movebot
  • Return to Movebot and Click Save and Test connection in Movebot.

  • If the connection has succeeded, you can continue.

  • Have the user sign in to OneDrive manually at least once to trigger provisioning.

    not supported
    when using
    Ludicrous Mode
    .
  • Enabling it may result in reduced migration performance due to the additional processing required.

  • As a beta feature, it may still undergo changes and should be used with caution in production environments.

  • We recommend testing thoroughly in a non-production environment before enabling this feature for critical workloads.

    Read the full article here.

    Modification Retention

    Fully Supported

    Automatic Sanitization

    Fully Supported

    SharePoint Column Metadata

    Beta Feature

    SharePoint Document Libraries

    Fully Supported

    OneDrive Users

    Fully Supported

    Permissions

    Fully Supported

    Versions

    step-by-step video guide below
    configuration steps
    configuration steps.
    learn morearrow-up-right
    herearrow-up-right

    Fully Supported

    Dropbox Business

    Learn how to connect to a Dropbox Business or Dropbox Teams account.

    hashtag
    Introduction

    Movebot has comprehensive support for Dropbox Business and Dropbox Teams through the Dropbox API. Connecting to Dropbox uses OAuth to authorize.

    circle-info

    To connect to Dropbox Personal see Other Connectors

    hashtag
    Requirements

    To connect to Dropbox Business online in Movebot you will need:

    • To have access to the account owner account in Dropbox, or an Administrator

    • The Dropbox account must be licensed

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select Dropbox Business from the list of available connections and set the connection name

    hashtag
    Common Errors

    Movebot supports bi-directional and tenant to tenant migrations with Dropbox Business. Below are common errors and questions related to scanning and migrating Dropbox Business data.

    chevron-rightError: Failed to scan Team Folder (access-denied)hashtag

    Cause: The admin user specified in your Dropbox connection does not have sufficient access to the Team Folder.

    Resolution: Even if the folder appears visible in the Dropbox Admin Console, the admin must be explicitly granted editor permissions on the folder itself. Visibility alone is not enough for Movebot to scan or migrate the contents.

    chevron-rightError: "Requested user could not be found."hashtag

    Cause: The admin email address used in your Dropbox connection is invalid or misspelled.

    Resolution: Double-check the spelling of the email address and confirm that the user exists within the Dropbox tenant.

    chevron-rightError: Too many items for single namespacehashtag

    Cause: This folder account contains more items than recommended for a single namespace.

    Resolution: This is a known Dropbox limitation. for a detailed explanation.

    hashtag
    Frequently Asked Questions

    chevron-rightMovebot scan shows substantially more data than what I see in my Dropbox accounthashtag

    Answer: This typically occurs when the "Exclude Shared Content" option is disabled in your Dropbox connection settings.

    When this setting is turned off, Movebot includes shared folders in the scan results for every user the folder is shared with. This means the contents of that folder are counted once for each user, significantly inflating the total scanned data.

    Important: A shared folder

    chevron-rightHow can I migrate a folder that has been shared with me by another user?hashtag

    Answer: By default, Movebot ignores folders shared with a user to avoid duplicating data when migrating an entire tenant.

    If the folder was shared with you by another user in your Dropbox tenant, you can locate and migrate the folder by browsing to the owner’s account in the Folder-to-Folder mapping modal.

    If the folder was shared by a user outside your organization, please contact Movebot support for assistance in mapping and safely migrating the data.

    hashtag
    Supported Features

    Movebot has comprehensive support for Dropbox and is well-maintained.

    Feature
    Supported in Movebot

    Tags: dropboxfullbusiness

    Box

    Learn how to connect to a Box account.

    hashtag
    Introduction

    Movebot has comprehensive support for Box through the Box API. Connecting to Box uses OAuth to authorize.

    hashtag
    Requirements

    To connect to Box in Movebot you will need:

    • To have either Admin or Co-Admin access rights to Box

    • To migrate all users, Admin access is required

    • The Box tenant must be licensed

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select Box from the list of available connections and set the connection name

    hashtag
    Common Errors

    Movebot supports Box migrations for individual users and entire organizations. Below are common issues and questions related to scanning and migrating data from Box.

    chevron-rightError: Access Denied when trying to scan/migrate certain usershashtag

    Cause: The account used to connect Movebot to Box does not have sufficient administrative privileges. Only the primary Box Admin user can access all user data, including content owned by other Co-Admins. If you connect using a Co-Admin account, you may encounter access denied errors when trying to access the Admin or other Co-Admin accounts.

    Resolution: Reconnect using the Box Admin account to ensure full access to all user content.

    hashtag
    Frequently Asked Questions

    chevron-rightThe number of files shown in Movebot scan results doesn't match what I see in Boxhashtag

    Answer: Box may not always display accurate or up-to-date file and folder counts due to a known platform limitation. For more details, refer to Box’s .

    chevron-rightHow can I migrate a folder that has been shared with me by another user?hashtag

    Answer: By default, Movebot ignores folders that have been shared with a user to avoid duplicating data when performing a full tenant migration.

    If the folder was shared by another user within your Box tenant, you can locate it by browsing into that user’s account using the Folder-to-Folder mapping modal.

    If the folder was shared by someone outside your organization, please contact Movebot support for help mapping and migrating the data safely.

    chevron-rightMovebot scan shows substantially more data than what I see in my Box accounthashtag

    Answer: This typically occurs when the "Exclude Shared Content" option is disabled in your Box connection settings.

    When this setting is turned off, Movebot includes shared folders in the scan results for every user the folder is shared with. This means the contents of that folder are counted once for each user, significantly inflating the total scanned data.

    Example: A shared folder named "Shared Media" is 1.5TB and shared with 20 users. With "Exclude Shared Content" disabled, Movebot counts that same folder

    hashtag
    Supported Features

    Movebot has comprehensive support for Box and is well-maintained.

    Feature
    Supported in Movebot

    Tags: box

    BIM 360 Docs

    Learn how to connect to Autodesk BIM 360 Docs.

    hashtag
    Introduction

    Connect to BIM 360 Docs and set it as the source or destination to start migrating your files.

    hashtag
    Requirements

    To connect Movebot to BIM 360 Docs you will need:

    • Account Admin access to BIM360

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task.

    2. When configuring the source or destination, choose Create New Connection.

    3. Select BIM 360 Docs from the list of available connections and set the connection name.

    hashtag
    Supported Features

    Movebot currently has partial support for BIM 360 Docs.

    Feature
    Supported in Movebot

    Tags: bim360

    Azure Files

    Learn how to connect to Azure Files

    hashtag
    Introduction

    Movebot supports moving files and folders to and from Azure Files.

    hashtag
    Requirements

    To connect to Azure Files in Movebot you will need:

    • To have access to an Azure account with the Storage File Data Privileged Contributor Role

    • Access Keys for the Azure Storage Account

    • The file share name from Azure

    1. When configuring a new connection, select Azure Files from the list of available connections and set the connection name

    2. Provide the Azure account name and account key

      • In Azure, you can find this by navigating to Storage Accounts and selecting the Storage Account you want to connect to. Then navigate to Access Keys. There you can copy the storage account name, and one of the access keys

    hashtag
    Supported Features

    Movebot has comprehensive support for Azure Files and is well-maintained.

    Tags: azure

    Azure Blob

    Learn how to connect to Azure Blob

    hashtag
    Introduction

    Movebot supports moving files and folders to and from Azure Blob storage.

    hashtag
    Requirements

    To connect to Azure Blob in Movebot you will need:

    • To have access to an Azure account with the Storage Blob Data Contributor role

    • Access Keys for the Azure Storage Account

    • The container name from Azure

    hashtag
    Configuration Steps

    1. When configuring a new connection, select Azure Blob from the list of available connections and set the connection name

    2. Provide the Azure account name and account key

      • In Azure, you can find this by navigating to Storage Accounts and selecting the Storage Account you want to connect to. Then navigate to Access Keys. There you can copy the storage account name and one of the access keys

    hashtag
    Supported Features

    Movebot has comprehensive support for Azure Blob and is well-maintained.

    Tags: azureblob

    SFTP Server

    Learn how to connect to an SFTP server

    hashtag
    Introduction

    Movebot supports connecting to an SFTP server as a source and destination.

    hashtag
    Requirements

    To connect to an SFTP server in Movebot you will need:

    • The hostname and port of the SFTP server

    • An SFTP username with password or private key

    hashtag
    Configuration Steps

    1. When configuring the source or destination, select SFTP from the list of available connections and set the connection name

    2. Provide the hostname and port for your SFTP server

    3. Provide your username

    hashtag
    Supported Features

    Movebot has comprehensive support for SFTP and is well-maintained.

    Tags: sftp

    Overview

    Learn about how to use Movebot to customise and manage your migration

    Movebot is designed to be simple to use, but as expected, migrations carry a lot of complexities and nuances. When using Movebot to migrate small or large volumes of data, there are generally a few main stages outside of the initial configuration.

    hashtag
    Stages of a Migration

    Warnings and Issues

    Learn about how Movebot gives Warnings and Issues.

    Scans provide a list of warnings and issues that have been identified with the migration. These warnings are useful for highlighting issues before kicking off the migration.

    To view warnings and predicted issues from a scan, open Content Options under the scan overview.

    Clicking on an issue will provide a detailed description and a list of files/folders that are impacted.

    You can also use Explorer/Navigator tab to see a tree view of all files and folders discovered by the scan. Clicking Show Simulation View will show an expected destination view of the migration.

    Add Network Mappings

    Learn how to add network mappings for file servers

    We recommend using mapped network drives when migrating from a Windows file server as they are more robust than direct UNC mappings, but Movebot supports both methods.

    UNC shares can only be configured manually and require a bit of syntactical magic. When adding a mapping from the project, click Configure folder paths manually then specify the UNC path to the remote server using the format shown in the example below.

    For clarity, see the breakdown below:

    /SERVER2/SharedFolder

    Project Discovery Scan

    Learn how to run a project discovery scan.

    To run a scan, create a new Movebot project, connect your platforms, and follow the wizard. Once done, select Save and Exit.

    You will find yourself at your migration project dashboard. Click on Run Discovery Scan.

    From the Discovery Scan page, you can then click on Launch Scan Now.

    You will be asked whether you wish to run a scan over the entire source platform or a specific location. We recommend scanning the entire source for cloud platforms and selecting the specific drive you wish to scan if you're working with on-prem servers.

    Finally, you can click Launch Scan to kick off your pre-migration scan.

    WebDAV

    Learn how to connect to a WebDAV server

    hashtag
    Introduction

    Movebot supports connecting to a WebDAV server as a source and destination.

    hashtag
    Requirements

    Searching Scan Results

    Learn how to Movebot's scan results.

    Movebot provides a bunch of standardized reports, but it is also possible to create your own reports using the search console under the files/folders view and search for files or folders.

    Under Files/Folders you can see all files and folders discovered in the scan. You can then use the filter to search for files/folders to find specific items.

    You can manually use search expressions as below.

    {files.filename == "file1.txt"}
    Match files with the filename "file1.txt"

    Amazon S3

    Learn how to connect to an Amazon S3 account

    hashtag
    Introduction

    Movebot supports moving files to and from Amazon S3 buckets, as well as moving data between S3 buckets.

    hashtag

    Scan and Discovery

    Learn about the scan tool in Movebot

    Data discovery is an important aspect of migrations and data lifecycle management. If you don't have the full picture in terms of your data, it is very hard to be able to perform any management tasks on that dataset. Movebot provides a fundamental tool to help solve this problem and provide detailed visibility into your dataset.

    hashtag
    What information does a scan provide

    Scans provide an aggregate and tree view of your connected storage engine. You are then able to navigate through that tree to view:

    Wasabi

    Learn how to connect to Wasabi

    Introduction

    Movebot supports moving files and folders to and from Wasabi.

    hashtag
    Requirements

    To connect to Wasabi in Movebot you will need:

    Google Drive (Personal)

    Learn how to connect to a personal user's Google Drive account.

    hashtag
    Introduction

    Connecting to Google Workspaces is fast to set up and fully supported in Movebot. Movebot uses the OAuth to authorize the connection.

    circle-info

    Google GCS

    Learn how to connect to Google GCS (Google Cloud Storage)

    hashtag
    Introduction

    Movebot supports moving files and folders to and from Google Cloud Storage.

    hashtag

    Mail ingestion methods

    Movebot has two options for mail ingestion for Google Workspace Accounts

    There are two different options for ingesting mail for Google Workspace Accounts, the Import and INSERT method.

    Import is the default method. This method imports mail with standard scanning and delivery functionality.

    The INSERT method is an alternative method that bypasses scanning for older messages, and can increase transfer speeds. When enabled, you can choose to use INSERT for messages sent a minimum of 15 days earlier, and up to 120 days as the maximum start point.

    hashtag

    Running the Movebot Agent as a Service

    Learn how to run the Movebot Agent as a Service for file server transfers.

    The Movebot Agent (Couchdrop Cloud Connector) can be run as a Windows service.

    Installing the agent as a service requires some understanding of how Windows services work and the service must be configured to run as the same user that is performing the configuration.

    Before starting, make sure that you have installed the Couchdrop Cloud Connector by Make sure you have run and configured everything properly and check that it is working.

    Add Team/Shared Drives

    Learn how to add team/shared drives to transfers.

    Movebot supports Team Drives and Shared Drive migrations to and from any platform. Mappings can be created by simply selecting the Team Drive in the source and where you would like files and folders to be transferred to in the destination.

    circle-info

    Movebot treats everything as a folder, which means the destination is interchangeable. You can map folders into Shared Drives/Team Drives, Folders within Team Drives, etc.

    Team Drives show up in the root along with users.

    Pausing/Resuming

    Learn about pausing and resuming transfer jobs.

    hashtag
    Pausing and Resuming Transfer Jobs

    Transfer jobs in Movebot can be safely paused and resumed at any time, giving you full control over the migration process.


    Performance and Speed

    Learn about general performance and speed in Movebot

    Movebot has been built architecturally to be optimized for speed. In most cases, this means you will not need to make any adjustments to settings for your migration to perform quickly. There are however a few details that are useful to understand when trying to determine how quickly your migration will run.

    hashtag
    Rate-limiting

    For most migrations, rate-limiting is going to be the number #1 bottleneck. Rate-limiting is a mechanism used by API providers to prevent abuse and to limit the impact of buggy API consumer applications on other customers.

    Others

    Scanning permissions

    Learn about how Movebot scans permissions.

    As part of a scan, permissions will be scanned from the source. You can then use the scan results to inspect the permissions on the source. Make sure check Enable File/Folder Permission Preservation during setup to use this feature.

    To check the permissions on an individual file or folder, go to Discovery Scan within your project, highlight your target item, and click *Details, then Sharing.

    hashtag

    Exchange Web Services (EWS)

    Here are the articles in this section

    Error: user-not-found

    hashtag
    Description

    Error: user-not-active

    hashtag
    Description

    Scheduling

    Learn how to schedule transfer jobs.

    Movebot offers two distinct scheduling features for managing job execution. Scheduling can be used to perform a daily delta migration at a certain time, or to restrict the time a particular migration job will transfer data.

    hashtag
    Scheduling Daily Execution

    Migration jobs can be scheduled to launch daily at a certain time.

    Directory.Read.All
    Files.ReadWrite.All
    SharePointTenantSettings.Read.All
    Sites.Manage.All
    User.ReadWrite.All
    Sites.FullControl.All

    To connect to a WebDAV server in Movebot you will need:

    • The URL of the WebDAV server

    • A valid username and password combination for the server

    hashtag
    Configuration Steps

    1. When configuring the source or destination, select Webdav from the list of available connections and set the connection name

    2. Provide the URL for the WebDAV server

    3. Provide your username

    4. Provide your password

    5. Select Save and Test Connection

    hashtag
    Supported Features

    Movebot has comprehensive support for WebDAV and is well-maintained.

    Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    Tags: sftp

    Requirements

    To connect to Amazon S3 in Movebot you will need:

    • To have access to an S3 account

    • S3 Access Key and S3 Access Key Secret

    hashtag
    Configuration Steps

    1. When configuring a new connection, select Amazon S3 from the list of available connection types and give the connection a name.

    2. Provide the S3 Access Key and S3 Access Key Secret, and optionally enter your S3 bucket name. For instructions on creating access keys, see this AWS guidearrow-up-right.

    3. In Movebot, select Save and Test Connection

    hashtag
    Supported Features

    Movebot has comprehensive support for Amazon S3 and is well-maintained.

    Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    Tags: s3 s3_compatible

  • File and folder counts

  • Largest file and folders

  • File types

  • Duplicate files

  • Sharing and permission information

  • Empty folders

  • Recently modified files and folders

  • Potential migration issues

  • You can also use the scan to search for files and folders that match certain conditions.

    hashtag
    Scan types

    Scans can be executed on a single transfer or a complete project. Project discovery scans are useful as they provide the basis for a migration project and can be used to assist in reorganising data during the migration.

    To have access to a Wasabi account with the AmazonS3FullAccess policy

  • The name of the Wasabi Bucket and its region name

  • An Access Key from Wasabi and Wasabi Access Secret Key

  • hashtag
    Configuration Steps

    1. When configuring the source or destination, select Wasabi from the list of available connections and set the connection name

    2. Provide the region that your Wasabi bucket is located in and the bucket name

      • This can be found in Wasabi under Buckets

    3. Provide an access key and secret key from Wasabi. To do this the user will need to have the AmazonS3FullAccess policy

      • In Wasabi, navigate to Access Keys and select 'Create Access Key'

      • Copy and paste the access and secret key from Wasabi into Movebot

    4. In Movebot, select Save and Test Connection

    hashtag
    Supported Features

    Movebot has comprehensive support for Wasabi and is well-maintained.

    Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    Tags: wasabi

    Enabling the INSERT method for a project

    To enable the INSERT method, execute the following steps:

    • Login to Movebot and choose or create a project with Google Workspace Gmail as the destination.

    • Go to the Content Options tab, and under Google Workspace Mail Options check the option for Use INSERT method for old emails. The default setting is for emails older than 30 days but this can be adjusted from 15 days up to 120 days.

    hashtag
    How to Pause and Resume a Job
    • To pause a job that is currently running, click Cancel/Pause Migration in the job menu.

    • To resume, open the same job and click Resume Job / Rerun Failures.

    When resumed, Movebot will pick up where it left off.

    You can pause and resume migrations as often as needed without affecting already transferred data.


    hashtag
    ⚠️ Keep in Mind

    If you click Start Full Migration, Start Delta Migration, or Start Data Only Migration instead of Resume Last Action / Rerun Failures, the job will start from scratch, requiring a re-scan of all previously scanned data.

    Always use Resume Last Action / Rerun Failures to avoid unnecessary duplication and preserve your job's progress.

    Most cloud storage providers implement some level of rate-limiting and it's important to be aware of this as a limiter of your migration's performance.

    Identifying rate-limiting

    If your migration is being impacted by rate-limiting, it will be visible in the Performance Advisor graphs. The Performance Advisor provides a project-level summary of performance metrics.

    What can be done about rate-limiting

    Generally, we are at the mercy of the cloud platforms in terms of rate-limiting, but there are a few tricks with each platform if things are not progressing as quickly as you would like.

    If you believe rate-limiting has become a problematic bottleneck in your migration project, reach out to our team via [email protected] and we can take a look at your project.

    hashtag

    Downloadable reports

    Additionally to the reporting available in the front end, you can download two reports on file permissions:

    Permissions Report

    A CSV export of all permissions detected on the source by file and folder.

    Applied Permissions Report

    A CSV export of applied permissions

    This feature is useful for syncing where the source dataset is still active and you want to perform a daily sync. Scheduling daily executions requires setting a daily start time and we recommend enabling
    Always Use Delta
    so Movebot is not migrating the same files every day without changes.

    hashtag
    Scheduled Data Transfer Window

    Movebot supports the ability to specify a time window when Movebot can move data in the transferring stage. Scheduling a data transfer window is done by specifying a start and end hour in UTC time.

    Unlike when Scheduling Daily Executions, scheduling a data transfer window does not start the migration automatically; you must still start the migration. Once the migration reaches the transferring stage, Movebot will check to make sure we are inside the scheduled data transfer window. If outside the defined window, we pause the transfer.

    circle-exclamation

    Note: When outside the transfer window, the migration will remain in the Transferring state, but no data will be migrated

    .

    Provide BIM 360 API access to your BIM 360 Docs account by following these steps:
    • Log in to BIM 360 Account Adminarrow-up-right.

    • If you have access to more than one account, select an account.

    • Click Settings, and select the Custom Integrations tab.

    • From the Custom Integrations screen, click the Add Custom Integration button.

    • From the Add Custom Integration screen, select Document Management, and click Next.

    • From the Add Custom Integration screen, select I'm the developer option, and click Next.

    • Enter the Forge Client ID 0rY4yx0hc4JJOTxwkxykpZZkxAJip3ayph2CUHrLwLVQHAyt , and the App Name, and select the I have saved the Account ID information securely checkbox. Optionally add an App Description and App Logo.

    • Click Save. The name of the app will appear in the Custom Integrations screen.

  • Click Link to BIM 360 Docs and authorize the connection through the popup window.

  • Save and Test the connection in Movebot.

  • If the connection has succeeded, you can continue.

  • Projects files and folders

    Fully Supported

    Permissions

    Not Supported

    Versions

    Not Supported

    You also need to provide the file share name of the file share that you want to use

    • In Azure, you can find this inside the Storage Account you want to connect to, and then navigate to File shares

  • Ensure your Azure Storage Account has the necessary permissions for Movebot to access your data

    • This can be found in Azure by selecting Access Control (IAM) and assigning the role Storage File Data Privileged Contributor to your account to allow Movebot to read and write your file shares

  • In Movebot, select Save and Test Connection

  • Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Automatic Sanitization

    Fully Supported

    Modtime Retention

    Not Supported

    You also need to provide the container name that you want to use

    • In Azure, you can find this inside the Storage Account you want to connect to, and then navigate to Containers

  • Ensure your Azure Storage Account has the necessary permissions for Movebot to access your data

    • This can be found in Azure by selecting Access Control (IAM) and assigning the role Storage Blob Data Contributor to your account to allow Movebot to read and write your blob containers

  • In Movebot, select Save and Test Connection

  • Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    Automatic Sanitization

    Fully Supported

    Provide your password or private key (or both)
  • Select Save and Test Connection

  • Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    /SERVER2

    This is the hostname of the target file-sharing server you are connecting to.

    If the original UNC path was \\SERVER2\SharedFolder, this is where SERVER2 came from.

    /SharedFolder

    The file share on the server

    Scan and Discovery

    Scanning the source and destination provides a complete picture of your data. Making it easy to craft and navigate your migration project.

    Transfer Mapping

    Learn about adding transfer mappings to your project. Choosing which data is going to be moved to where.

    Permissions and Metadata

    Learn about configuring permissions and metadata in Movebot. Movebot has comprehensive support for permissions and metadata.

    Transfer and Cutover

    Learn about executing your migration project and cutting over users to the new platform.

    A User Not Found User error occurs when Movebot cannot find a user. This could be due to an invalid transfer mapping or by attempting to map a user that does not exist.

    hashtag
    Common Root Causes

    • The transfer mapping is inaccurate and includes a user that does not exist

    • The username has a misspelling or other mistake

    hashtag
    Quick Fixes

    Ensure that your transfer mappings are accurate, and that the user actually exists. If you add transfer mappings with a CSV, there is a higher potential for this to occur. Adding mappings using the transfer modal can resolve this.

    Error Type

    user-not-found

    Relevant Store

    All

    A user not active error occurs when attempting to move an inactive user account. What 'activated' means in each platform can differ, but typically will mean that the user license has been disabled or deactivated from within the platform.

    hashtag
    Common Root Causes

    • The user may not be licensed

    • The user is not enabled or expired

    hashtag
    Quick Fixes

    Activate the user in the storage platform by ensuring the user is not disabled and has an active license.

    Error Type

    user-not-active

    Relevant Store

    All

    Exchange Web Services (EWS)chevron-right
    How to disable EWS throttlingchevron-right

    Performance and Limits

    Learn about performance limitations with Google Drive.

    Like most cloud storage providers, Google Drive has limitations that impact migration performance.

    hashtag
    Team drives are limited to 500,000 objects

    Google limits Team drives to a maximum of 500,000 objects. Once you reach this limit, you are unable to add new objects to the team drive.

    hashtag
    Folder nesting limit

    A folder in a Shared Drive in Google Workspace can have up to 100 levels of nested folders. If a folder in the source has more than 100 subfolders, the data folder architecture will need to be restructured to fit in Google Workspace.

    hashtag
    Google docs export limit

    Google does not allow Documents/Sheets/Presentations greater than 11MB in size to be exported into standard Microsoft formats via their API. Files exceeding this limit must be manually exported directly from the Google web frontend.

    hashtag
    Daily upload limit per user

    For individual users, Google has a daily upload limit of 750GB per user. Once this limit is hit, rate limiting prevents new objects from being uploaded

    hashtag
    Daily download limit per user

    Depending on the tenant, there is an undisclosed download limit. We believe this limit is around 13TB per day, but it varies between tenants.

    hashtag
    Rate limiting

    Google rate limits API queries. This creates an ultimate bottleneck during migrations that we cannot surpass. Movebot has very high quota limits, so generally rate limiting does not impact the performance much beyond what is described above.

    Tags: googledrive

    Error: file-not-found

    Error Type

    file-not-found

    Relevant Store

    All

    hashtag
    Description

    File Not Found errors are caused by us not being able to find and download the file in the store.

    circle-info

    During the scan stage of a migration (the first step), Movebot builds a map of all files to be transferred. If files change after the scan, this can cause issues.

    hashtag
    Common Root Causes

    • The file has been moved

    • The file is not accessible due to permissions

    • The filename has changed

    hashtag
    Quick Fixes

    • Check that the connected account has appropriate permissions to download the affected files.

    After attempting a fix, rerun failures or run a new delta migration to see if the error is resolved.

    Error: unknown-error

    Error Type

    unknown-error

    Relevant Store

    All

    hashtag
    Description

    Unknown Errors are errors that are not mapped to error types in Movebot.

    circle-info

    Cloud storage providers routinely make changes to their API's that can mean Movebot is not always able to provide a meaningful error message.

    hashtag
    Common Root Causes

    • Unexpected error caused in a storage provider's API

    • The error has not been categorised by us yet

    • A bug in our system

    hashtag
    Quick Fixes

    • Run a delta. The error might have been temporary

    • Attempt to diagnose by viewing the underlying error from the storage API in the storage tracker

    • Reach out to support

    Custom Column Metadata

    circle-exclamation

    This feature is currently in beta and may change. Use with caution in production and test thoroughly in staging environments.

    hashtag
    Overview

    When migrating between SharePoint Online (SPO) sites—whether across tenants or within the same tenant—preserving metadata like custom columns can be critical. Movebot now allows you to retain these metadata values during your migration, improving post-migration usability and data continuity.


    hashtag
    What It Does

    This allows you to transfer:

    • Custom columns from SharePoint Document Libraries

    • Metadata values associated with files


    hashtag
    How to Enable

    1. Open the "Options" tab from within your Project Settings

    2. Check the box to enable "Include SharePoint Column Metadata"


    hashtag
    Limitations

    • Not supported in Ludicrous Mode

    • Slower performance due to additional API requirements

    • Beta feature– edge cases may not be fully supported


    hashtag
    Recommendations

    • Test first in a non-production environment

    • Review sample files post-migration to verify metadata

    • Only use in scenarios where metadata accuracy is more important than speed


    hashtag
    Summary

    The "Include SharePoint Column Metadata" option helps retain custom metadata during SPO migrations, enhancing the fidelity of your data. While in beta, it’s a valuable tool for more accurate and context-rich SharePoint transfers.

    Failures and Errors

    Learn about how Movebot handles Failures and Errors.

    hashtag
    Handling Failures with Confidence

    While Movebot is designed to be reliable, occasional failures can happen—especially when dealing with varying cloud platforms and environments. The good news? Most issues are easy to fix, and failures are nothing to be afraid of.

    We’re here to help you handle them with ease.


    hashtag
    First Step: Resume Job / Rerun Failures

    If you have a finished transfer with outstanding failures, your first action should be to Resume Job / Rerun Failures. This simply resets the status of any failed files and tries again. This action does not require a re-scan of the source data.

    To rerun failures:

    1. Open your project and select any jobs that have failures.

    2. Click Launch Scan or Transfer.

    3. Select Resume Job / Rerun Failures.

    This often clears up transient or permission-based issues with minimal effort.


    hashtag
    Secondary Option: Start a Delta Migration

    If some failures persist—particularly with error types such as unknown errors, file-not-found, or checksum-mismatch—running a Delta Migration can be helpful.

    Delta migrations scan for and retry transferring files that have changed, or failed previously, without reprocessing files that have already migrated successfully.

    To start a delta migration:

    1. Open the project and select any jobs that have failures.

    2. Click Launch Scan or Transfer.

    3. Select Start Delta Migration.

    This is a safe and efficient way to retry specific problem files without restarting the entire job.

    hashtag
    Investigating Persistent Failures

    Movebot displays detailed failure information in the admin interface, including the original error message returned from the cloud platform. This can help pinpoint the reason a file failed to transfer.

    hashtag
    Still Need Help?

    If the reason for failure remains unclear, we’re happy to assist.

    📩 Contact support at [email protected] Our team can review the issue and guide you to a solution.


    Error: duplicate-file-name

    Error Type

    duplicate-file-name

    Relevant Store

    All

    hashtag
    Description

    Duplicate File Name error is caused by having 2 files with the same name

    circle-info

    During the scan stage of a migration (the first step), Movebot will perform checks to ensure your data will transfer properly. One of these checks is the paths of files - there is a chance some of your files have the same path as another one of your files

    hashtag
    Common Root Causes

    • The file has the same path as another file

    hashtag
    Quick Fixes

    • Nothing needs to be done to resolve this - we perform de-duplication to ensure that your files do not end up with the same path

    • De-duplication causes the file name to be renamed and prefixed with (Dup 1), (Dup 2), etc

    After attempting a fix, rerun failures or run a new delta migration to see if the error is resolved.

    Provide the email address of your administrator account
  • Click Connect to Dropbox and authorize the connection through the popup window. You will be required to log in to Dropbox. Make sure you log in with the same account that you specified above.

  • Click Save and Test connection in Movebot

  • If the connection has succeeded, you can continue

  • is different from a
    Team Folder
    .
    • Shared folders are owned by a specific user and live within that user's personal Dropbox space.

    • Team Folders are owned and managed at the organizational level and are not affected by the "Exclude Shared Content" setting.

    Example: A shared folder named "Shared Media" is 1.5TB and shared with 20 users. With "Exclude Shared Content" disabled, Movebot counts that same folder 20 times—once for each user—resulting in 30TB appearing in the scan results.

    To avoid this, enable the "Exclude Shared Content" setting so shared folders are only counted once, keeping scan results accurate and avoiding data duplication

    Versions

    Fully Supported

    Modification Retention

    Fully Supported

    Automatic Sanitization

    Fully Supported

    User Drives

    Fully Supported

    Shared Folders

    Fully Supported

    Team Workspace (Team Drives)

    Fully Supported

    Permissions

    See here

    Fully Supported

    Click Connect to Box and authorize the connection through the popup window
  • Click Save and Test connection in Movebot

  • If the connection has succeeded, you can continue

  • 20 times
    —once for each user—resulting in
    30TB
    appearing in the scan results.

    To avoid this, enable the "Exclude Shared Content" setting so shared folders are only counted once, keeping scan results accurate and avoiding data duplication

    Automatic Sanitization

    Fully Supported

    User Drives

    Fully Supported

    Permissions

    Fully Supported

    Versions

    Fully Supported

    Modification Retention

    official documentationarrow-up-right

    Fully Supported

    {files.is_dir == true}

    Only match directories

    {files.depth > 10}

    Match files/directories that are greater than 10 directories deep

    {files.depth < 10}

    Match files/directories that are less than 10 directories deep

    {files.size < 1024}

    Match files smaller than 1KB

    {files.size > 1024}

    Match files larger than 1KB

    You can join queries together with an "and" operator:

    Spaces and character cases are important and currently there is limited error handling.

    Connecting to a Google Workspace account is different. See
    for more information.

    hashtag
    Requirements

    To connect to a Google Drive personal drive in Movebot you need:

    • To be the account owner or have access to the Google Drive account

    • The Google Drive account must be licensed

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select Google Drive (Personal) from the list of available connections and set the connection name

    4. Click to Link to Google

    5. Click Save and Test connection in Movebot

    6. If the connection has succeeded, you can continue

    hashtag
    Supported Features

    Movebot has comprehensive support for Google Workspaces and is well-maintained.

    Feature
    Supported in Movebot

    User Drives

    Fully Supported

    Versions

    Fully Supported

    Modification Retention

    Fully Supported

    Automatic Sanitization

    Tags: googledrive

    Google Workspace Drives
    Requirements

    To connect to Google GCS in Movebot you will need:

    • To have access to a Google GCS account with Storage Admin access

    • The name of the Google Cloud bucket

    hashtag
    Configuration Steps

    1. When configuring the source or destination, select Google Cloud from the list of available connections and set the connection name

    2. Provide the name of your Google Cloud bucket

      • This can be found under Cloud Storage -> Buckets within Google Cloud

    3. Upload your JSON service account file

      • This can be found in Google Cloud under IAM & Admin -> Service Accounts -> [Service Account Name] -> Keys

      • Ensure the Service Account has Storage Admin access so that Movebot has all the necessary permissions to migrate files

      • Select Add Key, and ensure the type is JSON

    4. After uploading the JSON document, select Save and test the connection

    hashtag
    Supported Features

    Movebot has comprehensive support for Google GCS and is well-maintained.

    Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    Tags: gcloud

    Click on the settings icon (⚙️) in the top right of the agent window, then click "
    Install as a service
    "

    If you encounter an error, try running the agent as an administrator before installing the service.

    Tags: agent

    following the steps outlined herearrow-up-right
    . arrow-up-right
    hashtag
    Adding a Team Drive mapping

    Click Add Transfer from the project overview and navigate through the source and destination selecting the folders on the source and the destination.

    hashtag
    Migrating Permissions

    Movebot supports moving both team/shared drives and the associated permissions. To find out more about migrating permissions, see our section on Permissions and Metadata.

    Progress ShareFile (Citrix)

    Learn how to connect Movebot to ShareFile.

    hashtag
    Introduction

    Movebot has comprehensive support for ShareFile through the ShareFile API. Connecting to ShareFile uses OAuth to authorize.

    hashtag
    Requirements

    The following is required to connect to ShareFile in Movebot:

    • The ShareFile tenant must be licensed

    • The ShareFile account you connect with must have Admin access rights

    hashtag
    Configuration Steps

    1. Log in to Movebot and add a new storage connection when configuring a Project during the Source or Destination step.

      1. You can also add the new connection in the Admin panel under the Storage tab

    2. Select Sharefile (Citrix) from the list of available connections and set the connection name

    circle-info

    Your ShareFile subdomain is the domain prefix that you use when logging into ShareFile. For example, for the domain "movebotest.sharefile.com", you would use "movebotest"

    1. Return to Movebot. Movebot will show that the ShareFile account is linked when successful.

    hashtag
    Common Errors

    chevron-rightError: Unable to scan specific folders (file-not-found)hashtag

    Cause: This usually occurs when attempting to scan permissions using an account that is not the ShareFile Account Owner.

    Resolution:

    • Reconnect Movebot to ShareFile using the Account Owner credentials, or

    hashtag
    Supported Features

    Movebot has comprehensive support for ShareFile and is well-maintained.

    Feature
    Supported in Movebot

    Tags: sharefile

    Amazon WorkDocs

    Learn how to connect to Amazon WorkDocs

    hashtag
    Introduction

    Connecting to Amazon WorkDocs is fast to set up and supported as a source connection in Movebot.

    circle-info

    Amazon WorkDocs is only supported as a source. Setting it as a destination will throw an error.

    hashtag
    Requirements

    To connect Movebot to an Amazon WorkDocs you will need:

    • To generate an AWS access key

    • To know the organization ID and region for the site you wish to transfer

    hashtag
    Configuration Steps In Amazon

    1. Login to your AWS Management Console and navigate to applications then IAM

    2. Under IAM create a new permissions "migrations" policy and copy over the existing permissions using JSON option.

    1. Now create a new "migration" user and assign it our new policy using attach policies directly. Make sure this is the only policy assigned to the new user.

    2. Under your new user's Summary page, on the right create new access key for an application running outside AWS. Note these down to use later.

    3. Go back to the AWS Management Console and under settings on far left go "All services"

    hashtag
    Configuration Steps In Movebot

    1. Log in to Movebot, choose Create New Connection, select Amazon WorkDocs as the connection, and set a name.

    2. Set the Access Key ID, Access Key Secret, the site's Organization ID, and the region it belongs to.

    3. Save and Test connection in Movebot

    hashtag
    Supported Features

    Movebot is currently working on adding comprehensive support as a source for Amazon WorkDocs and is well-maintained

    Feature
    Supported in Movebot

    Tags: aws_workdocs

    IMAP Server

    Learn how to connect to an IMAP server.

    hashtag
    Introduction

    Movebot can connect to any mailbox that supports an IMAP connection, including personal Gmail accounts.

    Movebot connects to IMAP servers by you providing the Hostname and Port and a Username and Password combination.

    hashtag
    Requirements

    To connect Movebot to an IMAP Server you will need:

    • Hostname and Port for the IMAP server

    • A Username and Password for each source account

    circle-exclamation

    Currently, IMAP is only supported as a source.

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select IMAP Server from the list of available connections and set the connection name

    hashtag
    CSV Formatting for IMAP Credentials for Multiple Users

    When moving to/from an IMAP server, you can provide credentials for each user directly in the CSV file by specifying a "source_secret" and/or "destination_secret" column.

    To add a CSV file with multiple users, within a project click Add Transfer and then Import Transfer from CSV in the dropdown.

    The format for these columns shown below.

    Example (IMAP source):

    For help with CSV mappings, get in touch with support via

    hashtag
    Supported Features

    Movebot has comprehensive support for IMAP servers and is well-maintained.

    Feature
    Supported in Movebot

    Tags: imap

    Mapping Permissions

    Learn about how to map permissions in Movebot

    Extended Mappings define how user/group permissions should be rewritten and ensure that destination permissions are correctly applied in scenarios where the username/domain is changing. Once permissions migration has been enabled, you will see the option to configure Extended Mappings as an additional step in your project settings.

    Example Mappings

    Scenario
    Source Mapping
    Destination Mapping

    hashtag
    Importing mappings from a CSV file

    For situations where the username format is changing, you can add explicit mappings for each user. When migrating a large organization, you can create a CSV file of mappings that can be imported.

    An example CSV file is:

    hashtag

    hashtag
    Other Options

    Tweak the permission migration further

    Granting OneDrive Access

    Learn about granting OneDrive access for SharePoint migrations.

    Migrating into and out of SharePoint with users requires the SharePoint admin registered with Movebot to have access to users' OneDrive accounts. In SharePoint, admins do not have access by default to individual OneDrive accounts so access will need to be granted.

    hashtag
    Granting Access to an Individual User

    As long as you are a licensed Microsoft 365 Global Administrator, you can take ownership of a user’s OneDrive by following these steps:

    1. Log into the Microsoft 365 Admin Center for your tenant

    2. Open Active Users under the Users tab and search for the user whose files you need

    3. Click on the Display name of the user

    4. Open the OneDrive settings tab

    5. Click Create link to files

    Once the link appears, no further action is required.

    hashtag
    Granting Access to all Users

    For larger organizations, you can use PowerShell to automate granting permissions at scale.

    circle-info

    If you do not have experience with Powershell, consult someone in your organization who does or have a chat with our team for help.

    1. Ensure you have the SharePoint PowerShell utilities installed:

    Open PowerShell as Administrator and run:

    2. Create a new PowerShell Script in Notepad, substituting the fields as appropriate for your domain

    3. Run the PowerShell script. Once it has been completed, your SharePoint admin account should have access across the organization.

    circle-info

    Please note: Currently, this script only works in Windows PowerShell.

    4. Be sure to include the -admin part of the URL when configuring $AdminSiteURL 5. If your account has 2FA configured, the -credential argument should be removed. Tags: sharepoint legacy_sharepoint onprem_sharepoint onedrive

    Granting access to all sites using SharePoint API in GCC High tenants

    Learn about granting Movebot access to all SharePoint sites in GCC High tenants by using Microsoft PowerShell.

    Migrating SharePoint sites in GCC High tenants requires providing Movebot access to the sites. This can be done by using PowerShell with an account that has appropriate permission levels.

    circle-info

    If you do not have experience with PowerShell, consult someone in your organisation who does or have a chat with our team for help.

    1. Install PowerShellarrow-up-right on your computer and connect to Microsoft Graph GCC High

    # Install once (current user)
    Install-Module Microsoft.Graph -Scope CurrentUser -Force
    Import-Module Microsoft.Graph
    
    # Connect to the GCC High cloud
    Connect-MgGraph -Environment USGov `
      -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All", "Directory.Read.All"
    
    # (Optional) confirm cloud
    (Get-MgContext).Environment
    
    1. Identify your app & SharePoint resource

    1. Find the Sites.FullControl.All App role on SPO and assign it to your app

    1. Verify the assignment

    You should see an assignment referencing SharePoint with an AppRoleId matching $spoRole.Id.

    SharedWithMe content

    Learn about the ShareWithMe option when Google is the source.

    When users share a MyDrive folder with another user, this folder shows up under "Shared With Me" in Google Drive.

    Shared with me content

    Movebot does not migrate shared folders by default. If you want to include shared folders for a user migration/transfer, you can enable this under Content Options.

    hashtag
    Migrating Shared With Me Content

    To transfer shared folders as part of the migration, disable the Exclude SharedWithMe Content under Content Options in the project configuration.

    With Exclude SharedWithMe Content disabled, Movebot will transfer all files owned by the migrating user in shared folders to the destination. You can expand this to include all files and folders with the options below.

    pCloud

    Learn how to connect to a pCloud account

    hashtag
    Introduction

    Connecting to pCloud is fast to set up and supported as a source connection in Movebot.

    circle-info

    pCloud is only supported as a source. Setting it as a destination will throw an error.

    hashtag
    Requirements

    To connect to pCloud in Movebot you will need:

    • Username and password for the pCloud account or be able to connect via OAuth

    hashtag
    Configuration Steps

    1. When configuring a new connection, select pCloud from the list of available connection types and give the connection a name.

    2. Connect to pCloud by clicking 'Link to pCloud' button, and log in to pCloud in the popup that comes up

    3. After a successful login, click Save and Test Connection in Movebot

    hashtag
    Transferring Multiple Users

    In pCloud, it is only possible to connect a single user per connection, and impersonation via an admin user is not supported within pCloud. In order to transfer multiple users, a separate pCloud Storage Connection and project will need to be created for each user.

    hashtag
    Supported Features

    Movebot has comprehensive support for pCloud and is well-maintained.

    Tags: pcloud

    Transfer Mapping

    Learn about transfer mappings in Movebot

    Transfer mapping are the building blocks for migrations in Movebot. After configuring a project, you will most likely want to add transfer mappings to it.

    Transfer mappings tell Movebot which files and folders to move. Each transfer mapping is an isolated migration task that can be launched in isolation.

    Example of Transfer Mappings:

    Source
    Destination

    Each user, team drive or folder that you want to transfer in Movebot needs to be covered by a transfer mapping.

    circle-info

    Movebot treats everything like folders. Users, team drives, network drives, mailboxes; they all appear in Movebot as if they were folders. This simplifies adding mappings and means you can reorganize data between storage types.

    Mappings can be added in a variety of ways. Learn more about how to add transfer mappings below:

    SharePoint Ludicrous Mode

    hashtag
    What Is Ludicrous Mode?

    Ludicrous Mode is a high-performance migration mode that leverages SharePoint’s Migration API. This is a lesser-known, batch-based ingestion API designed to reduce the number of calls via the standard Microsoft Graph API. It offers significantly improved throughput, especially for migrations containing larges number of small files.

    hashtag
    Key Benefits

    Ludicrous Mode is ideal for:

    • Projects involving high file counts and small files

    • Reducing the likelihood of significant throttling during large-scale transfers

    hashtag
    Filename Sanitization Differences

    Ludicrous Mode requires stricter character sanitization than the Graph API. Specifically:

    • Ampersands (&) and single quotes (') will be removed from file and folder names

    • This behaviour is different from standard Graph-based migrations, which may preserve these characters

    Because of this, it is crucial not to toggle Ludicrous Mode partway through a migration. Switching modes mid-migration can result in duplication or delta inconsistencies, as filenames will be treated as different objects depending on which API handled them.

    circle-check

    Enable Ludicrous Mode before starting a migration and keep it enabled for the entire duration of the job.

    hashtag
    How to Enable Ludicrous Mode

    triangle-exclamation

    Do not enable/disable Ludicrous Mode if you have already started transferring data. Doing so will result in duplicate files/folders and delta failures due to differences in filename sanitization rules.

    Ludicrous Mode can be enabled at the project level in Movebot. Before enabling:

    1. Open your project settings.

    2. Select 4. Options

    3. Enable "Include only changed objects/files"

    If you have any questions, please contact [email protected] or reach out via the live chat.

    Non-GUI Environments

    Learn about connecting the Movebot agent in a Non-GUI enivronment

    hashtag
    Install the agent on your Workstation

    First, you need to install and configure the Movebot agent (Couchdrop Cloud Connector) on your workstation.

    You can follow the article herearrow-up-right for configuration instructions. Once you have installed and configured the agent, you need to copy the configuration.

    On your workstation, browse to the folder

    Copy configuration.conf to a location you can access on the new server and also copy the Couchdrop Cloud Connector installer. Now you can uninstall the Agent from your workstation.

    hashtag
    Set up the agent on the Server

    On the server, you will need to open the command prompt as an administrator. Once you have done that, you will need to locate where you copied your installer and configuration.conf file on the server.

    Below is an example command of how to install silently, but your path may vary on your location.

    Once this is complete, you need to apply the configuration to the server. To do this, copy your configuration.conf.

    On the server, you will need to browse to this location. You may need to create the CouchdropCloudConnector folder under your Appdata\Local as the agent has not run yet.

    Now we need to set up the agent as a service. Follow the article . Be aware you don't need to install the agent again. You can go to the area of the article where it tells you to run the following command.

    Once you have completed installing the agent as a service and the service is running, you can check your Couchdrop Cloud Connector configuration folder and it should look similar to the image below

    Wait for 30 seconds and verify the agent is working by doing a scan or another action in the . Tags: agent

    Add User Mappings

    Learn how to add User Mappings.

    User-to-user transfers are the simplest form of migration with Movebot. Movebot allows you to migrate all files and folders under one user's account to another. Additionally, you can configure it to only migrate cherry-picked folders from the source to the destination.

    hashtag
    Adding a simple user to user mapping

    Under the Project manager, click Add Transfer. select the source user and destination user then hit Save and Finalize.

    You can also add customization options like filtering to only include/exclude specific files and folders.

    By default, Movebot will always migrate data into a separate folder in the destination with a "migrated from" prefix. This is to prevent accidental data clashes and make reorganizing data after the migration easy for users. You can disable this by clicking "Migrate folder contents".

    hashtag
    Configuring user to user via CSV

    For scale, CSV files can be used to import large numbers of users. The CSV file should be in the format shown below.

    For help with CSV mappings, get in touch with support via

    Excluding Content

    Learn about how to exclude content from transfers.

    Normally, Movebot will migrate all files and folders from the source folders to the destination with the exception of a few file types that are not supported by the destination. However, files can be manually excluded as well.

    Movebot allows administrators to extend this functionality and define exclusion and inclusion rules. This can be done on a project level or on an individual transfer level.

    hashtag
    Project Level Exclusion Rules

    Project exclusion rules will apply to all migrations in a project. Administrators can define these rules under Content Options.

    hashtag
    Individual Migration/Transfer Level Rules

    The same options are available on an individual migration/transfer. These options extend what was already configured at a project level.

    Additionally, you can change an individual transfer to only include files matching a certain set of rules. This is useful for carving up your project into chunks by file types or size.

    Available Rule Types

    File Extension Matches
    Only match files with the following extensions

    Error: token-expired

    Error Type

    token-expired

    Relevant Store

    Box, ShareFile, OneDrive

    hashtag
    Description

    This error indicates that the authentication token used to connect Movebot to a storage platform (source or destination) has expired. Without a valid token, Movebot cannot continue scanning or migrating data.

    hashtag
    Common Root Causes

    • The OAuth or API token used during initial connection has expired due to time limits set by the storage provider.

    • Project settings were modified mid-migration, triggering a refresh or disconnect of the active token.

    • The connection has been idle for an extended period.

    hashtag
    Quick Fixes

    1. Open your Project Settings.

    2. Navigate to the Source or Destination section where the error occurred.

    3. Click Manage Connection Settings and re-authorise the connection.

    Deltas and Changes

    Learn about how Movebot handles Deltas and changed files.

    hashtag
    Keeping Your Data Up to Date

    In active environments, it’s common for files to be added or updated during a migration. Movebot’s Delta Migration feature helps keep your destination up to date by copying only the files that have been added or modified since the last transfer.


    hashtag
    How Delta Migrations Work

    Delta Migrations compare the source and destination using each file’s modification time (modtime). Only files that are new or have a more recent modtime on the source will be transferred. This reduces duplication and speeds up the process by skipping files that haven't changed.

    Important: Movebot does not delete or move files at the destination. If you rename, move, or delete files or folders in the source, those changes will not be reflected in the destination. To avoid duplication or confusion, we recommend avoiding major restructuring during the migration process.


    hashtag
    Enabling "Always Use Delta"

    To enable Delta Migrations across all runs:

    1. Go to Step 4 in your project settings.

    2. Enable the “Only Include Changed Files/Objects” option.

    This ensures Movebot will compare the source and destination before each transfer and skip any files that haven’t changed. Note: This option may increase scan time, but reduces transfer time by focusing only on what’s changed.


    hashtag
    Running a Delta Migration Manually

    You can manually launch a Delta Migration at any time. Here’s how:

    1. Open your project.

    2. Select the job(s) you want to run a Delta for.

    3. Click Launch Scan or Transfer.

    Delta runs may take slightly longer to scan but are much faster during the transfer stage than full migrations. They can be run as often as needed and are particularly helpful for:

    • Catching files that were created or updated during a prior transfer

    • Cleaning up certain error types, such as:

      • Unknown errors

    Google

    Learn about transferring data in and out of the Google Platform

    Movebot has comprehensive support for Google Workspaces and Personal Google Drives through a variety of connectors.

    hashtag
    Quick Start Guides

    Windows 2012 R2 Guide

    Learn how to setup the windows agent on Windows 2012 R2.

    hashtag
    Introduction

    Microsoft has deprecated Windows 2012 R2 however it is still widely in use in legacy environments and in some environments it is not possible to use a virtual machine to act as a jump host to transfer the data with Movebot.

    In this guide - we will cover how you can setup and run the Movebot windows agent in this type of environment.

    circle-exclamation

    Running a migration directly on Windows 2012 R2 is not recommended as it requires using a legacy version of the Movebot/Couchdrop windows agent that is not as robust as more recent versions and may be unreliable. If possible - we recommend using a virtual machine to connect via SMB/CIFS to the legacy server instead.

    hashtag
    Requirements

    To get started - you will need:

    • Administrator access to the server

    • A RDP session or physical access to the server

    • Basic knowledge of server administration

    hashtag
    Installation Steps

    To install and start the agent

    1. Install the package downloaded above

    2. Configure the agent manually

    3. Start the installed process. The front end for the agent will fail to load properly.

    hashtag
    Configuring the agent manually

    The agent uses a configuration file stored in the filesystem. When running the agent on windows 2012 - the GUI front end does not work so you will need to configure the process manually.

    This is relatively easy:

    1. Open the configuration file with notepad - creating it if it does not already exist.

    1. Copy the JSON configuration below - with a valid storage_id

    1. Save the configuration file and start the Movebot agent again.

    Adding Transfers from Scan

    Learn how to add transfers directly from scan results.

    Movebot supports adding transfers directly from the scan results. This allows you to use the Explorer feature of the discovery scan to analyze the content and easily create mappings for multiple transfer projects using the same source and destination.

    hashtag
    Adding Transfers from Explorer

    After running a scan, check the Discovery Scan tab and choose Explorer to review the files and folders that Movebot has scanned. You'll also see an overview of errors and warnings, such as if you are attempting to map a drive in the source that is too large for the destination. If you click on one of these errors or warnings, the results will only show results that have that specific issue.

    To add a Transfer from the scan results, simply highlight beside a folder, click the checkbox, and click Add Transfers. You can also pick to Ignore File, which can be useful for isolating objects that you do not want to move to the destination. If a folder or its subfolders are used in a transfer, Movebot will inform you with an icon beside the file name.

    hashtag
    Mapped sub-folders

    In the above screenshot, you may notice that one folder has a Mapped sub-folders notice. This means that while the folder at this level has not been mapped as a transfer, at least one sub-folder below has been.

    This is useful to keep track of which folders you have mapped to both make sure you move all the data across and avoid moving the same folders multiple times.

    hashtag
    Ignore subfolders mapped in other transfers

    As a further safeguard from moving the same folder in multiple transfers, Movebot has the the option to ignore subfolders mapped in other transfers as part of the Content Options when setting up a transfer. When this default option remains checked, Movebot will ignore subfolders that have previously been mapped within the same project so that you don't have to manually exclude them one at a time.

    This method allows you to run transfers much quicker, but keep in mind that if you intentionally want to transfer a folder to multiple locations, you will need to leave this option unchecked so that it won't be ignored.

    Dropbox Personal

    Learn how to connect to a personal Dropbox account.

    hashtag
    Introduction

    Movebot supports connecting to a personal Dropbox account through the Dropbox API. Connecting to Dropbox uses OAuth to authorize.

    circle-info

    To connect to Dropbox Business or Dropbox Teams see

    hashtag
    Requirements

    To connect to Dropbox Personal in Movebot you need:

    • To be the account owner or have access to the Dropbox Personal Account

    • The Dropbox account must be licensed

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select Dropbox Personal from the list of available connections and set the connection name

    hashtag
    Supported Features

    Movebot has comprehensive support for Dropbox and is well-maintained.

    Feature
    Supported in Movebot

    Tags: dropbox

    Delegating Domain Wide Authority

    Connect Google Workspace to Movebot with a Client ID and domain-wide delegation

    hashtag
    Introduction

    To connect a Google Workspace account to Movebot, you need to delegate domain wide authority so Movebot can access your users and migrate them automatically.

    hashtag
    Requirements

    Delegating Domain-Wide Authority requires the following:

    • A Google Workspace Administrator Account to access the Admin Console

    • Familiarity with the Google Admin Console

    • Client ID for Google generated in Movebot when configuring a Google Workspace connection

    hashtag
    Configuration Steps

    1. for your Google Workspace domain.

    2. Select the Security tab. If you don't see Security, select Show More from the bottom of the menu list.

    3. Choose Access and data control and then API controls.

    1. Click Authorize. Test that the connection in Movebot is successful to complete your configuration.

    For more information on domain-wide delegation, see this Support article from Google: Tags: googledrive_domain

    Backblaze B2

    Learn how to connect to Backblaze B2

    hashtag
    Introduction

    Movebot supports moving files and folders to and from Backblaze B2.

    hashtag
    Requirements

    To connect to Backblaze B2 in Movebot you will need:

    • To have access to a Backblaze B2 account

    • An application key with read and write permissions

    hashtag
    Configuration Steps

    1. When configuring the source or destination, select Backblaze B2 from the list of available connections and set the connection name

    2. Provide your Backblaze Key ID and Master Key

      • In Backblaze B2, this can be found under Application Keys. You may need to generate another key to view the Master Key. Copy both the Key ID and the Master Key into Movebot

    hashtag
    Supported Features

    Movebot has comprehensive support for Backblaze B2 and is well-maintained.

    Tags: backblazeb2

    Error: invalid-filename-characters

    Error Type

    invalid-filename-characters

    Relevant Store

    All

    hashtag
    Description

    Invalid Filename Character errors are due to having an invalid name for a file.

    circle-info

    During the scan stage of migration (the first step), Movebot will perform checks to ensure your data will transfer properly. One of these checks is the names of files - there is a chance some of your files have invalid names

    hashtag
    Common Root Causes

    • The file has an invalid name for the store that it is being uploaded into

    hashtag
    Quick Fixes

    • Add a filename transformation rule to modify the names of the files during the transfer

      • This is found under Project Settings -> Content Options

      • This cannot be done for email/contacts/calendars, only for files

    After attempting a fix, rerun failures or run a new delta migration to see if the error is resolved.

    How to disable EWS throttling

    Instructions to disable EWS throttling using your Microsoft 365 account

    By default, Microsoft throttles EWS connections in order to limit simultaneous connections for security and infrastructure stability. In typical use, most users will not come across EWS throttling, but it is possible to hit this limitation during a migration due to the increased number of requests.

    Throttling can be temporarily disabled for up to 90 days from within the Microsoft 365 account settings and requires an account with access to the Admin portal.

    hashtag
    Requirements

    To disable EWS throttling you will need:

    • A Microsoft 365 account with access to the Admin portal

    • Permissions to submit Support requests in the Microsoft 365 admin center

    hashtag
    Steps to Disable EWS throttling

    1. Login to Microsoft 365 with an Admin account

    2. Open the Admin panel from the list of apps

    3. From the Sidebar, choose the tab for Support and then Help & Support. You may need to click Show All for the Support tab to appear.

    hashtag
    Verifying that EWS throttling has been successfully disabled

    After at least 15 minutes have passed, you can check to see if the changes have taken effect. Repeat Steps 1-4 above. If the changes were successful, the Run Diagnostics window should now show a message that Exchange Web Services are not currently throttled.

    hashtag
    Disabling EWS throttling via support ticket

    An alternative method to disable EWS throttling is to create a Support ticket and ask the Microsoft Team to make the change for you.

    Errors and Failures

    Learn about how to debug and deal with errors and failures in Movebot

    Movebot attempts to remedy all failures automatically, but there are some failure types that will require manual intervention and we cannot transfer the data across.

    There are two main types of failures:

    • Fatal Failures

    • File or Folder Failures

    Fatal failures occur when we cannot proceed with any transfers in a migration job and file or folder failures occur when there was an issue transferring or scanning a file or folder discovered under a transfer mapping (job).

    hashtag
    Viewing Errors

    Errors can be found on an individual transfer mapping basis under Error Tracker.

    hashtag
    Failure Severities

    Errors and failures in Movebot are categorized by severity as described below.

    Severity Rating
    Example
    Description

    hashtag
    Error Resolution

    Fixing errors generally comes down to two approaches:

    • Adjustments in configuration or a manual transfer of the object

    • Running a Delta

    If the root cause is not obvious and it cannot be fixed through configuration, then attempt to run a Delta. If running a Delta does not fix the issue, then reach out to support at [email protected].

    Data Localization

    Learn about Data Localization options

    Movebot uses dynamically launched and managed dedicated worker nodes to execute your migration when you launch it. Your data does not leave these nodes and they are terminated as soon as your migration is complete. Nodes are never shared between customers.

    By default, we use compute resources within our San Francisco data center. You can adjust the geographic location of your migration to meet your performance or data sovereignty requirements.

    You can find Data Localization options in any project under Settings --> Options in the section Migration Geographic Region.

    Current available regions

    San Francisco
    Digital Ocean SFO3

    Deduplication of files/folders

    Learn how Movebot deals with deduplication of content in Google

    Google Drive allows users to create (mostly by accident) duplicate folders and files.

    Which is the real "folder1"?

    Screen_Shot_2022-04-05_at_9.37.27_AM.png

    Google is the only platform that allows users to create this sort of mess.

    hashtag
    How Movebot deals with duplication

    Duplicated data creates two main issues for Migrations.

    1. Most destination systems do not allow duplicate files and folders.

    2. Tracking changes is impossible with files that are named the same.

    To facilitate safe data transfer, Movebot will rename files and folders that have duplicate names.

    This deduplication ensures files are not lost and the folder structure is maintained.

    circle-exclamation

    hashtag
    Deduplication cannot be disabled

    Although Google to Google transfers would support duplication, Movebot does not allow this behavior as it creates a risk of data loss.

    Manual Permissions

    Learn how to manually map permissions.

    Permissions can be manually configured from a CSV file, or the Box collaborators report. When enabled, Movebot will not query for permissions in the source system, rather it will look for permissions in the provided CSV file.

    hashtag
    CSV File Format

    If you are not using the Box collaborators report, the format of the permissions CSV file is as shown in the example below.

    filename,collaborator permission,collaborator login
    /Case Studies,Editor,[email protected]
    /FolderX/Case Studies,Editor,[email protected]

    hashtag
    Box Collaborators Report

    From your Box admin console, go to Reports > Create Report and click Select Filters on the row for the collaboration report.

    If you want to migrate your entire organisation, you can leave the filters blank, or you can generate the report for specific users you wish to migrate.

    Sharing and Ownership

    Learn about Sharing and Ownership within Google Drive platforms.

    Google Drive provides a high level of flexibility in its sharing model in comparison to other storage providers. This additional flexibility creates issues when migrating to a new Google Tenant or another storage provider like Dropbox.

    hashtag
    Team drives vs Shared folders

    There are some subtle differences between Team Drives and Shared folders.

    Namespaces and Limitations

    Learn about Namespaces and Limitations in Dropbox.

    When migrating large datasets to Dropbox and when migrating permissions, namespaces inside Dropbox need to be considered.

    Dropbox has published official documentation around namespace limitations that can be found in the following locations. Movebot recommends reading through this if migrating more than 1 million files.

    Windows 2008 R2 Guide

    Learn how to setup the windows agent on Windows 2008 R2.

    hashtag
    Introduction

    Microsoft has deprecated Windows 2008 R2 however it is still widely in use in legacy environments and in some environments it is not possible to use a virtual machine to act as a jump host to transfer the data with Movebot.

    In this guide - we will cover how you can setup and run the Movebot windows agent in this type of environment.

    circle-exclamation

    Proxy Configuration

    Learn about working with proxy configuration for file servers.

    In networks where internet access is only allowed behind a proxy server some additional manual configuration is needed.

    Steps:

    1. Install and run the agent

    2. Set the token

    3. Stop the agent and then add the proxy configuration manually

    {files.modtime > 1602629811} and {files.size > 1024}

    Upload this JSON document to Movebot

    Open Advanced Options
  • Enable "SharePoint Ludicrous Mode"

  • The token was revoked manually or automatically by the platform (e.g., security policy or admin action).

    Avoid making changes to connection settings or project configuration while a migration is running, as this can increase the risk of token expiry.

    Choose Start Delta Migration.
    File-not-found
  • Checksum-mismatches

  • Change the name of the affected files manually in the source.
    A search bar will appear. Type in Increase EWS Throttling Policy.
  • An option will appear to Run Diagnostics. Click Run Tests and choose a duration that will cover the migration period.

  • You will receive a message that an update to the throttling policy has been started. This may take 15 minutes to take effect.

  • {files.extension == "png"}

    Match files with the extension .png

    {files.modtime > 1602629811}

    Match files modified after the unix timestamp provided

    {files.modtime < 1602629811}

    Match files modified before the unix timestamp provided

    Fully Supported

    Feature

    Supported in Movebot

    Files and Folders

    Supported as Source only

    Modification Retention

    Fully Supported

    When generating your key, ensure your key has 'Read and Write' permissions. This will allow Movebot to have access to your bucket and move data.

  • Provide your Backblaze Bucket ID

    • In Backblaze B2, this can be found underneath Buckets

  • In Movebot, select Save and Test Connection

  • Feature

    Supported in Movebot

    Files and Folders

    Fully Supported

    Modification Retention

    Fully Supported

    Google Workspace

    Learn how to connect Movebot to Google Workspace

    Personal Google Drive

    Learn how to connect Movebot to a personal Google Drive

    Google Mail

    Learn how to connect to Gmail to migrate mail, calendars and contacts

    user:[email protected]

    user:[email protected]

    teamdrive:/Shared

    teamdrive:/Archive/Shared

    mailbox:[email protected]

    teamdrive:/Archive/Mail

    Add User Mappings

    Learn how to map user to user transfers in Movebot

    Add Team Drive Mappings

    Learn how to map team drives in Movebot

    Import CSV Mappings

    Learn how to use the CSV import process to bulk import users and folders to Movebot

    Click the button to link to ShareFile and authorize the connection through the pop-up window. Enter the account's subdomain prefix and grant access.

    Disable permission migration if permissions are not required for your use case.

    Important: You must use the Account Owner. "Super Admin" users do not always have sufficient access to scan permissions on folders inside "allshared" space.

    Automatic Sanitization

    Fully Supported

    User Drives

    Fully Supported

    Permissions

    Fully Supported

    Versions

    Not Supported

    Modification Retention

    Not Supported

    Click Connect to Dropbox and authorize the connection through the popup window. You will be required to log in to Dropbox. Make sure you login with the same account that you specified above.
  • Click Save and Test connection in Movebot

  • If the connection has succeeded, you can continue

  • User Drives

    Fully Supported

    Versions

    Fully Supported

    Modification Retention

    Fully Supported

    Automatic Sanitization

    Dropbox Business

    Fully Supported

    File y.txt was ignored

    Medium severity errors can normally be ignored, but should be noted as they can show incorrect configuration.

    Low Severity

    File !blah.txt was renamed to blah.txt

    Low severity warnings are informational.

    Critical

    Folder / Files failed to scan

    Critical errors are generally very bad. These include an outright failure to scan a directory, which can lead to dataloss.

    High

    Could not create file x.txt

    High severity errors are generally isolated to a single object. It is recommended that you address them on an individual basis.

    Medium

    London

    Digital Ocean LON1

    Frankfurt

    Digital Ocean FRA1

    Tokyo

    AWS ap-northeast-1

    Dedicated/Self Hosted

    Chat with the Movebot team for more information on this option.

    New York

    Digital Ocean NYC1

    Toronto

    Digital Ocean TOR1

    Amsterdam

    Digital Ocean AMS1

    Singapore

    Digital Ocean SING1

    Other Connectors

    Click on "Amazon Workdocs" under Business Applications
  • Click on the settings on far left and now select "My sites"

  • Note down your Organization ID and the Amazon region in the url (e.g. us-east-1)

    1. If your Organization ID doesn't show up here - on the top right change your region to where you expect your workdocs to be hosted and repeat steps 5-8.

  • Users, Files and Folders

    Fully Supported

    Permissions

    Fully Supported

    Provide the Hostname for the IMAP server. Update the Port number if required.
  • Provide a Test/Default Username and Password. Note that IMAP credentials can be overridden per transfer, which allows you to configure and manage projects with multiple user accounts

  • Save and Test connection in Movebot

  • If the connection has succeeded, you can continue

  • Email Messages and Folders

    Fully Supported

    [email protected]envelope

    All usernames mapped to email addresses

    *

    *@couchdropdemo.com

    Domain-only change (username unchanged)

    *@couchdrop.io

    *@couchdropdemo.com

    Username changes and becomes email address

    john.doe

    [email protected]

    Username and domain both change

    [email protected]

    [email protected]

    Group name mapped to group email

    Group 1

    [email protected]

    Send Notification Invitations

    Send email notifications to users when permissions are added.

    This option is not supported by all cloud platforms.

    Exclude Unmapped Permissions

    Only include permissions for users that are included in the mappings.

    This option is useful for preventing re-sharing with external users.

    Exception Rules

    Prevent permissions from being migrated under certain circumstances.

    # Your Entra app's CLIENT ID
    $appId = "<YOUR-APP-CLIENT-ID>"
    
    # Your app's service principal
    $sp = Get-MgServicePrincipal -Filter "appId eq '$appId'"
    
    # SharePoint Online resource SP in M365
    $spoSp = Get-MgServicePrincipal -Filter "appId eq '00000003-0000-0ff1-ce00-000000000000'"
    
    [email protected]envelope
    The windows agent - https://couchdrop-package-repo.s3.us-west-1.amazonaws.com/couchdropcloudconnector/1.0.43/couchdrop-cloud-connector-installer.msiarrow-up-right
  • The storage authentication token from Movebot

  • Test the connection in Movebot

    In the Domain wide delegation section, choose MANAGE DOMAIN WIDE DELEGATION.

  • In the API clients section, click Add new. Paste the Client ID generated from Movebot into the Client ID field.

  • In the OAuth scopes (comma-delimited) field, paste the following:

  • Login to the admin console arrow-up-right
    https://support.google.com/a/answer/162106?hl=enarrow-up-right
    { "Version": "2012-10-17", "Statement": [ { "Action": [ "workdocs:Download*", "workdocs:Get*", "workdocs:Describe*", "ds:DescribeDirectories", "ec2:DescribeVpcs", "ec2:DescribeSubnets" ], "Effect": "Allow", "Resource": "*" } ] }
    source,source_secret,destination
    /mailbox:[email protected],[email protected]:P@ssw0rd1,/mailbox:michael@newdomain
    /mailbox:[email protected],[email protected]:P@ssw0rd2,/mailbox:[email protected]
    source,destination
    [email protected],[email protected]
    [email protected],[email protected]
    Install-Module -Name Microsoft.Online.SharePoint.PowerShell
    #Set Runtime Parameters
    $AdminSiteURL="https://couchdrop-admin.sharepoint.com"
    $SiteCollAdmin="[email protected]"
    
    #Connect to SharePoint Online Admin Center
    Connect-SPOService -Url $AdminSiteURL -Credential $SiteCollAdmin
    
    $OneDriveSites = Get-SPOSite -Template "SPSPERS" -Limit ALL -IncludePersonalSite $True
    Write-Host -f Yellow "Total Number of OneDrive Sites Found: "$OneDriveSites.count
    ​
    ForEach($Site in $OneDriveSites)
    {
    	Write-Host -f Yellow "Adding admin to: " $Site.URL
    	Set-SPOUser -Site $Site.Url -LoginName $SiteCollAdmin -IsSiteCollectionAdmin $True
    }
    
    Write-Host "Site Collection Admin Added Successfully!"
    # Locate the Sites.FullControl.All (application) role
    $spoRole = $spoSp.AppRoles |
      Where-Object { $_.Value -eq "Sites.FullControl.All" -and $_.AllowedMemberTypes -contains "Application" }
    
    # Grant that role to your app's service principal
    New-MgServicePrincipalAppRoleAssignment `
      -ServicePrincipalId $sp.Id `
      -PrincipalId $sp.Id `
      -ResourceId $spoSp.Id `
      -AppRoleId $spoRole.Id
    
    Get-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $sp.Id |
      Where-Object { $_.ResourceDisplayName -match "SharePoint" } |
      Select-Object ResourceDisplayName, AppRoleId, PrincipalDisplayName
    
    source,destination
    user:[email protected],user:[email protected]
    user:[email protected],user:[email protected]
     C:\Users\%username%\AppData\Local\CouchdropCloudConnector\configuration.conf
    {"storage_id":"KEY_FROM_MOVEBOT_FRONTEND"}
    https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.readonly, https://www.googleapis.com/auth/admin.directory.user.security

    Only match files with the following name. This field supports unix style wildcards

    Path matches

    Only match files with the following path. Field also supports unix style wildcards

    Files older than

    Only match files that are older than

    Files modified before timestamp

    Only match files modified before the defined unix timestamp

    File size greater than

    Only match files with a size greater than

    File/Folder name matches

    Team Drives
    Shared Folders

    Who owns the content

    The organisation

    The individual user who created each file or folder.

    Can permissions be removed

    No

    Permissions can be customised at any level.

    The sharing user, can be removed from subfolders created by external users.

    File limitations

    400,000 files per drive

    The most important thing to remember here is around ownership. In a Team Drive, the organization owns the content, not individual users. In a Shared Folder, the individual that creates the content owns it. This means, user1@googleenvelope shares a folder with user2@google,envelope and then user2@googleenvelope creates a file or folder, it is owned by user2@googleenvelope and user2@googleenvelope can revoke user1@googlesenvelope access to it.

    This flexibility can cause data loss and orphaned data, whereby the parent folder has been deleted and the child no longer has a parent and so cannot be found.

    This approach to ownership is great for individual users, but a nightmare for organizations, as organizations lose control over their data.

    hashtag
    Migrating MyDrive data with Movebot

    Movebot takes a pragmatic approach to solving this problem and normalizes the ownership model so that it works for organizations and is compatible with other content systems like Dropbox, Box, and Office365.

    During a migration, content discovered under a particular user's root becomes their content in the destination. Permissions can still be assigned, and that content can be shared with anyone, but the ownership stays under the migrating user.

    This ensures that the organization has control over the data.

    hashtag
    Migrating invisible data in MyDrive

    If users have created complex sharing rules in shared MyDrive folders, then the migrating user may not be able to see data that lives in their shared folders.

    Movebot can detect this, by enabling "Search for unreachable content"

    Screen_Shot_2022-04-05_at_9.11.53_AM.png

    Unreachable data will then be flagged.

    circle-exclamation

    Note: Enabling this option does slow down the calculating stage, but disabling the option can lead to data loss, as any files that meet the criteria won't be moved.

    If you are unsure about enabling this option, contact support at [email protected].

    Tags googledrive

    Team folders and Shared folders in Dropbox typically reside in their own namespace. Each namespace has soft and hard limits around the number of files, users, and permissions associated with them.

    hashtag

    hashtag
    How does Movebot work with namespaces?

    Movebot has some features that can assist with navigating namespace limitations and properly structuring data when moving into Dropbox.

    Identification of Potential Issues

    During a Discovery Scan, Movebot will identify folders that should be split into separate team folders or namespaces inside Dropbox.

    While Movebot does not force you to split large folders into smaller namespaces, it is highly recommended that you follow the guidance provided by the Discovery Scan and use this information to direct the structuring process.

    Root Folder Namespace Creation

    "Create a namespace per transfer" is an option that can be enabled from the Content Options page for a project or an individual transfer mapping.

    When enabled, Movebot will create the root folder targeted by the transfer within a new namespace. If the root folder already has its own namespace, Movebot will not create an additional namespace.

    Only the root folder will receive a unique namespace. Subfolders of the same transfer will not be created with separate namespaces unless they have permissions that break inheritance or are created by other transfers in Movebot.

    Permission Namespace Creation

    When migrating with permissions, Movebot will create a namespace for any shared folders with permissions that do not inherit permissions from the parent folder.

    Movebot will automatically detect Shared folders with custom permissions that have not been inherited and create the shared folder/namespace in Dropbox with the required permissions.

    If you remove the permissions inherited from a parent shared folder, a new namespace will be created inside Dropbox.

    For assistance configuring large migrations to Dropbox, please contact [email protected]envelope

    Tags: dropbox dropboxfull dropboxfullbusiness

    Restrictions and Limitations for Team Deployments

    https://help.dropbox.com/plans/large-deploymentsarrow-up-right

    Dropbox Performance Guide

    Running a migration directly on Windows 2008 R2 is not recommended as it requires using a legacy version of the Movebot/Couchdrop windows agent that is not as robust as more recent versions and may be unreliable. If possible - we recommend using a virtual machine to connect via SMB/CIFS to the legacy server instead.

    hashtag
    Requirements

    To get started - you will need:

    • Administrator access to the server

    • A RDP session or physical access to the server

    • Basic knowledge of server administration

    • The modified windows agent - Contact for the download link

    • The storage authentication token from Movebot

    hashtag
    Installation Steps

    To install and start the agent

    1. Install python3.8 - https://www.python.org/downloads/release/python-380/arrow-up-right

    2. Uncompress the downloaded modified agent from above

    3. In the command line - run the agent using the batch file

    1. Stop the agent - Ctl-C

    2. Setup the configuration - see Configuring the agent manually

    3. Start the agent again:

    1. Test the agent from Movebot

    hashtag
    Configuring the agent manually

    The agent uses a configuration file stored in the filesystem. When running the agent on windows 2012 - the GUI front end does not work so you will need to configure the process manually.

    This is relatively easy:

    1. Open the configuration file with notepad - creating it if it does not already exist.

    1. Copy the JSON configuration below - with a valid storage_id

    1. Save the configuration file and start the Movebot agent again.

    You will need to locate the Movebot configuration file, normally it's located in the directory, C:\Users\%username%\AppData\Local\CouchdropCloudConnector.

    Open the file with Notepad, or something similar, and you will find a JSON with a base config.

    4. Edit the "proxies" section, adding an HTTP and HTTPS proxy with the syntax below:

    5. Save the file, and start the agent again.

    Proxy URL syntax examples:

    Simple, no username and password

    http://<ip>:<port>

    With username and password

    http://username:password@<ip>:<port>

    Socks

    socks://<ip>:<port>

    To debug connection issues, check the log files located in the same directory as the configuration files and feel free to contact support for help at [email protected]. Tags: agent

    Exclude Shared Content owned by another user

    This option will filter files by owner.

    All files in the shared folder will be transferred to the destination

    Exclude Shared Content owned by a migrating user

    This option will filter files by users in the project.

    Files that are not owned by users included in the migration project will be excluded.

    herearrow-up-right
    Movebot web interfacearrow-up-right
    Screen_Shot_2022-04-05_at_9.41.22_AM.png

    Exchange Server

    Learn how to connect to an Exchange Server

    hashtag
    Introduction

    Movebot connects to Exchange Servers using service account credentials and the server hostname.

    Connecting Movebot to the Exchange Server requires giving Movebot permissions to access data.

    hashtag
    Requirements

    To connect Movebot to Exchange, you will need:

    • Exchange Server credentials and server hostname

    • Service account with Discovery Management Role

    hashtag
    Configuration Steps

    1. Login to Movebot, choose Create New Connection, choose Microsoft Exchange (EWS), and set the connection name.

    2. Enter your Exchange Server EWS hostname. Example: exch01.mydomain.com note: please do not include the https:// prefix.

    ​

    hashtag
    Common Errors

    Movebot supports migration from Exchange On-Prem environments. Below are common errors users may encounter, along with troubleshooting steps and frequently asked questions.

    chevron-rightError: Authentication Issue - UPN Logins Not Allowedhashtag

    Cause: UPN-based logins are not permitted in the current server configuration.

    Resolution: Enable UPN-based logins on your Exchange server to allow authentication using the [email protected] format when connecting via EWS.

    chevron-rightError: Authentication Issue - Basic Authentication Not Allowedhashtag

    Cause: Basic authentication is disabled on the Exchange server.

    Resolution: Enable basic authentication for EWS access. This is required for Movebot to successfully authenticate and perform migrations from Exchange On-Prem.

    chevron-rightError: The account does not have permission to impersonate the requested userhashtag

    Cause: The service account you specified on your Exchange connection doesn’t have ApplicationImpersonation rights for the mailbox.

    Resolution: Use steps below to check current permissions and grant org-wide or scoped access. 1. Check current permissions

    chevron-rightError: Hostname Issuehashtag

    Cause: The default hostname or URL used to connect to EWS is not resolving correctly or is incomplete.

    Resolution: If the default URL format exch01.domain.com doesn't work, try using the full EWS path instead: exch01.domain.com/ews/exchange.amsx

    hashtag
    Frequently Asked Questions

    chevron-rightHow do I handle the cutover?hashtag

    Movebot simplifies cutover using delta migrations. You can migrate while users are active, then run a final delta to capture any changes after they stop using the source—minimizing downtime.

    If your domain changes during cutover, use "Remap Domains for Cutover" from the Run Action menu. This allows you to specify the old and new domains for source/destination mailboxes, ensuring mappings remain accurate. After remapping, you can continue running delta migrations post-cutover.

    chevron-rightHow do I transfer one specific folder within a mailbox?hashtag

    Answer: You can use the CSV Import feature to map the specific folder. Example: source,destination /mailbox:[email protected]/@MAIL/Important Mail,/mailbox:[email protected]/@MAIL

    chevron-rightHow can I migrate only mail that was received before a specific date?hashtag

    Answer: Yes, from the launch menu, you can select a desired timeframe to include email up to the specified date.

    chevron-rightOnce I've migrated the historical mail, can I run a migration for only mail received after a certain date?hashtag

    Answer: Yes. Use the Start Delta Migration option from the launch menu, then specify how far back you'd like the delta to cover.

    chevron-rightDoes Movebot support merging multiple mailboxes into a single mailbox?hashtag

    Answer: Yes. It is possible to use a CSV import to map multiple source mailboxes into a single destination mailbox. You can assign each source to a custom sub-folder. Be sure to enable "Migrate folder contents" when importing the CSV.

    Example:

    source,destination /mailbox:[email protected]/@MAIL,/mailbox:[email protected]/@MAIL/source-one/mailbox:[email protected]/@MAIL,/mailbox:[email protected]/@MAIL/source-two/mailbox:[email protected]/@MAIL,/mailbox:[email protected]/@MAIL/source-three

    hashtag
    Supported Features

    Movebot has comprehensive support for Exchange and is well-maintained.

    Tags: exchange

    Calendar Migrations with Movebot

    Learn about calendar migrations with Movebot

    hashtag
    Introduction

    Movebot takes an unusual approach to calendar migrations, using the same mechanics of storage migrations for mail, calendar, and contacts. Because of this, we recommend that you read through Data Migrations with Movebot as a precursor to reading this.

    hashtag
    Supported Systems:

    hashtag
    Quick Start Guide

    Because transferring or migrating calendar data uses the same process as emails and contacts, simply follow the existing guide for .

    hashtag
    Enable Calendar Migration

    1. Navigate to your Movebot project.

    2. Go to Settings → Options.

    3. Enable checkbox for "Include Calendars"

    hashtag
    Configure Extended Mappings

    Extended Mappings define how attendee email addresses should be rewritten and ensure that destination calendar events correctly reflect the intended participants. Configuring Extended Mappings is a required part of calendar migrations. Once calendar migration is enabled, you will see the option to configure Extended Mappings as an additional step in your project settings.

    Mapping Examples:

    Scenario
    Source Mapping
    Destination Mapping

    hashtag
    Advanced Calendar Settings

    triangle-exclamation

    These settings should not be adjusted unless explicitly instructed by our support staff.

    Setting
    Description
    Default

    SharePoint API Limits

    When migrating data into, out of, or within SharePoint Online, Microsoft enforces strict throttling limits to ensure fair usage across tenants. These limits scale depending on how many licenses you have.


    hashtag
    What Are Resource Units?

    Resource Units (RUs) are how Microsoft measures the cost of API operations. Each action your migration tool performs consumes a specific number of RUs.

    hashtag
    Resource Unit Costs for Movebot Migrations


    hashtag
    Daily Tenant-Level Limits

    These limits apply daily across the entire tenant, regardless of how many apps are in use.


    hashtag
    Daily Application-Level Limits (Per App, Per Tenant)

    These limits apply daily per app registration, and per tenant.


    See the page to see how these limits can affect migration performance.

    Import CSV Mappings

    The easiest way to add mappings to a project at scale is via a CSV file. CSV mappings are added to a project as individual transfers/move jobs and you can then treat them like any other mappings.

    hashtag
    Uploading a CSV file

    Within your project, click + Add Transfer. Select Import Transfers from CSV.

    Server Requirements

    Learn about requirements for connecting Movebot to file servers.

    hashtag
    Virtual Server Requirements

    This software is run as an executable and can be also run as a service. While every migration is different, we recommend the resources below.

    Type

    Mail Migrations with Movebot

    Learn about Mail, Calendar and Contact migrations in Movebot

    hashtag
    Introduction

    Movebot takes an unusual approach to mail migrations, using the same mechanics of Storage Migrations for mail, calendar, and contacts. Because of this, we recommend that you read through as a precursor to reading this.

    hashtag

    $> cd C:\Users\%username%\Downloads\<location of download>
    $> INSTALL.bat
    $> cd C:\Users\%username%\Downloads\<location of download>
    $> INSTALL.bat
     C:\Users\%username%\AppData\Local\CouchdropCloudConnector\configuration.conf
    {"storage_id":"KEY_FROM_MOVEBOT_FRONTEND"}
    {
    ...
    "proxies": {
    "http": "", 
    "https": ""
    }, 
    ...
    }
    C:\Users\%username%\AppData\Local\CouchdropCloudConnector
    C:\Couchdrop\couchdrop-cloud-connector-installer.msi /quiet
    C:\Users\%username%\AppData\Local\CouchdropCloudConnector
    .\couchdrop-cloud-connector-service.exe install
    supportenvelope
    https://developers.dropbox.com/dbx-performance-guidearrow-up-right
    http://127.0.0.1:8080arrow-up-right
    http://proxyuser:[email protected]:8080arrow-up-right
    socks://127.0.0.1:8080arrow-up-right

    [email protected]

    [email protected]

    Copies shared calendars as static snapshots. Does not preserve live sharing functionality.

    Disabled

    Ignore Events Older Than 7 Days (legacy)

    Limits migration to only recent events.

    Disabled

    Same Domain and Username

    *@domain.com

    *@domain.com

    Domain Change (Username Unchanged)

    *@old-domain.com

    *@new-domain.com

    Include External Events

    Copy events where the migrating user was an attendee (but not the owner).

    Enabled

    Send Invitations to Attendees

    Sends calendar invites to destination users after migration.

    Disabled

    Google Workspaces Gmail
    Outlook Online (Office 365) EWS
    Exchange Server
    Mail Migrations

    Domain and Username Change

    Include External Shared Calendars

    50,000+

    27,000,000

    50,000+

    6,000,000

    Operation

    Resource Units (per file or folder)

    Scan Directory (Excluding Permissions and Version History)

    2

    Create Folder (Non-Delta)

    2

    File Upload

    2

    File Download

    Tenant License Count

    Daily Limit

    0 – 1,000

    5,400,000

    1,001 – 5,000

    10,800,000

    5,001 – 15,000

    16,200,000

    15,001 – 50,000

    Tenant License Count

    Daily Limit

    0 – 1,000

    1,200,000

    1,001 – 5,000

    2,400,000

    5,001 – 15,000

    3,600,000

    15,001 – 50,000

    SharePoint Performance Expectations

    1

    21,600,000

    4,800,000

    Provide the username for the service account, typically in the format of <username>@<exchange_domain>, e.g. Administrator@<exchange_domain>
  • Provide the password for the service account.

  • Provide Discovery Management permissions to the service account following these steps.

    1. Log in to your Exchange Admin Center (Exchange Control Panel), which can be accessed through the web at <domain_hosting_exchange>/ecp

    2. Log in to the administrator account

    3. Select the 'permissions' tab within the Exchange Control Panel

    4. Under Admin Roles select Discovery Management and click the '+'. button.

    5. Under members, add the user you are using on the Movebot configuration, then click save. It will take a few minutes for the new changes to reflect.

      • If permissions are incorrectly configured, Movebot will show the error message "The caller has not assigned any of the RBAC roles requested in the management role header".

  • Click Save and Test connection in Movebot

  • Grant org-wide impersonation
    1. (Optional) Grant scoped impersonation

    Feature

    Supported in Movebot

    Email Messages and Folders

    Fully Supported

    Calendars

    Fully Supported

    Contacts

    Fully Supported

    Public Folders

    Source Only

    Get-ManagementRoleAssignment -Role ApplicationImpersonation -GetEffectiveUsers
    New-ManagementRoleAssignment -Name "impersonation_svc" -Role ApplicationImpersonation -User [email protected]
    New-ManagementScope -Name "ImpersonationScope" -RecipientRestrictionFilter {Department -eq "Migration"}
    New-ManagementRoleAssignment -Name "impersonation_svc_scoped" -Role ApplicationImpersonation -User [email protected] -CustomRecipientWriteScope "ImpersonationScope"
    hashtag
    CSV Formatting

    When executing a file migration, the CSV uses a simple source, destination format.

    CSV prefixes can target special objects like users, drives, on-premises agents, or mailboxes.

    Prefix Format
    Example
    Supported Store Types

    /user:<username or email>

    /user:[email protected]

    Boomsync, Box, Dropbox Business, Egnyte, Google Workspace, OneDrive, pCloud, Sharefile, Sharepoint, Legacy Sharepoint, Amazon Workdocs

    /teamdrive:<team drive name>

    /teamdrive:My Team Drive

    Boomsync, Dropbox Business, Egnyte, Google Workspace, Huddle, Sharefile

    hashtag
    Mapping Subfolders

    You can select a specific subfolder to be transferred by specifying the folder path after the prefix.

    Examples:

    • /user:[email protected]/Interview Videos/2024

    • /teamdrive:Finance/Reports/2024/Q4

    • /sharepointsite:/sites/HR:/Documents/2024/Review Process

    hashtag
    Additional Mapping Options

    Setting
    Behaviour

    Migrate folder contents (Don't retain root folder)

    Enabled: Only the contents of each specified source folder are migrated - the folder itself is not created in the destination.

    Disabled: The specified source folder is retained, and a matching subfolder is created in the destination.

    Ignore checks on import

    Skip validation of CSV source/destination paths (e.g. prefix formatting). Contact support before enabling.

    hashtag
    CSV Formatting - IMAP Credentials

    When moving to/from an IMAP server, you can provide credentials for each user directly in the CSV file by specifying a "source_secret" and/or "destination_secret" column.

    The format for these columns are shown below.

    Example (IMAP source):

    For help with CSV mappings, get in touch with support via [email protected]envelope

    Min Requirement

    Memory

    16Gb

    Hard Disk Space

    32GB of free disk

    Network

    1000GB LAN connectivity

    Internet Connectivity

    Unfiltered connectivity

    CPU

    4+ vCPU Cores

    hashtag
    Supported Windows Versions

    Below are the current versions of Microsoft Windows that are tested and supported.

    Operating System
    Supported

    Windows 10

    Yes

    Windows Server 2016

    Yes

    Windows Server 2019

    Yes

    Windows Server 2022

    hashtag
    Migrating Data from Unsupported Servers

    If you’re working with an unsupported server OS, you can still migrate your data using this workaround:

    1. Install the Windows Server Agent on a supported Windows machine.

    2. Create a mapped network drive to the location of the unsupported server.

    3. Configure the agent to access data via the mapped drive path.

    This approach allows you to migrate data across your network without needing to install the agent directly on the unsupported system.

    Need help setting this up? Contact [email protected].

    hashtag
    Network and Firewall Requirements

    Migrations are upload-intensive by nature and so the speed of your migration will be heavily dependant on your internal and external network capacity. We recommend 1Gbps uplink speed where possible.

    If you are experiencing performance issues with the agent, we recommend running a speed test and checking your project settings to ensure you've selected migration region that is close to the agent.

    Recommended Connectivity for Host

    Params
    Details

    Ports and Connectivity

    HTTP and HTTPS internet access. Ports 80, 443 and 53

    Uplink Speed

    100MBit Internet Uplink. Recommended 1GBit

    Local Network

    1000Gbit Physical LAN connectivity

    Outbound Firewall

    The Movebot agent communicates with the Movebot control plane and APIs exclusively via HTTPS. This means that no additional ports are needed to be opened.

    If you have a restrictive firewall, we recommend deploying the Movebot agent on a virtual machine that can be whitelisted through the firewall. Movebot uses dynamic IP addresses and connectivity to Movebot's cloud infrastructure IP addresses cannot be whitelisted due to the dynamic nature of Movebot's cloud architecture.

    If you are using a proxy server - we highly recommend allowing Movebot to use a direct path to the internet. If this is not possible, then follow the instruction here to configure the Movebot agent to connect via the proxy.

    For more information, get in touch with support via [email protected]arrow-up-right Tags: agent

    Supported Systems

    Movebot currently has support for:

    • Email from individual users and shared mailboxes

    • Private and shared calendars

    • Contacts

    In the following platforms:

    • Google Workspaces Gmail

    • Exchange Server

    • Outlook Online (Office 365)

    hashtag
    Key Concepts in Movebot for Mailboxes

    When configuring a mailbox migration in Movebot, there are a couple of key concepts that we have adopted to help make the process simple. It's useful to quickly skim through them to understand how we approach mailbox transfers differently.

    hashtag
    Mailboxes are Built on Movebot

    Using Movebot to perform email, calendar, and contact migrations uses the same process as with Data Migrations with Movebot.

    hashtag
    Migrate Mail the Same Way as Files and Folders

    Movebot extracts email, calendars, and contacts so that they behave like files and folders. This approach is a bit unusual, but has some key benefits. One benefit is that mailbox migrations support delta migrations natively, another is that mailboxes can be transferred to normal file storage, allowing you to back up mail with Movebot.

    A major advantage to our approach is that Mailboxes can be cherry-picked. Because Movebot works with your mailbox as if it's a filesystem, you can pick and choose what content you move and use Movebot to reorganize and ignore certain folders inside mailboxes. This means you can include/exclude based on a filter or move mail between labels, users, and inboxes.

    hashtag
    Delta Migrations

    circle-check

    Deltas move new emails automatically, without a hard cutover

    The delta functionality in Movebot is an overlooked gem. Most migration tools require a hard cutover, but with Movebot, the cutover process can be managed by the admin in a way that best suits them.

    In Movebot, delta migrations iteratively migrate changes that have occurred since the first transfer using the modification time and other metadata by looking at a scan of both the source and the destination.

    During a delta migration, Movebot will only transfer emails that have either been updated or newly created in the source.

    Deltas can be ran as many times as needed, including months after the project was initially set up.

    hashtag
    Quick Start Guide

    Because transferring or migrating mailbox data uses the same process as files, simply follow the existing guide for Data Migrations with Movebot.

    hashtag
    Frequently Asked Questions

    chevron-rightHow do I manage the cutover?hashtag

    Movebot simplifies cutover using delta migrations. You can migrate while users are active, then run a final delta to capture any changes after they stop using the source—minimizing downtime.

    If your domain changes during cutover, use "Remap Domains for Cutover" from the Run Action menu. This allows you to specify the old and new domains for source/destination mailboxes, ensuring mappings remain accurate. After remapping, you can continue running delta migrations post-cutover.

    chevron-rightDo I need separate migration projects for mail and data?hashtag

    Yes. Mail, calendar, and contact migrations require a separate project from data migrations because they involve different access scopes and permissions.

    chevron-rightShould I separate my mail migration from my calendar migration?hashtag

    Mail and calendars can typically be migrated together in a single project. However, for larger or more complex migrations, separating them into individual projects may help improve performance.

    If you're unsure which approach is best for your migration, please contact support for guidance.

    chevron-rightWhat will happen to my meeting rooms, shared mailboxes, etc?hashtag

    Resources such as meeting rooms and shared mailboxes are treated as standard mailboxes during the migration process.

    Data Migrations with Movebot

    None

    Content can be orphaned

    No

    Yes

    Google Workspace via internal marketplace application

    An alternative way to connect to a Google Workspace account to Movebot using an internal marketplace application

    hashtag
    Overview

    Movebot has support for connecting to Google workspaces via an internal marketplace application rather than the normal delegated access using Movebot's service tokens. This connection can work both for drive files and for mail.

    Using this type of connection is not recommended and has limitations and complexities involved in the setup that are not recommended for most customers.

    circle-exclamation

    We recommend only customers with experience managing Google Cloud and marketplace applications attempt to use this connection method. We would also recommend that you reach out to support before proceeding.

    hashtag
    When should we use this instead of the standard delegated access connection

    If you require:

    • The ability to limit Movebot's access to specific OUs and/or user groups

    • The ability to control the quotas

    hashtag
    Requirements

    To connect to Google using this method, you will need the following:

    • A Movebot account

    • A Google Workspace administrator account

    • The ability to create a Google Cloud project

    hashtag
    How to create the application

    1. Log in to Google Cloud Console and create a new project

    • This should be done with an administrator account to ensure you have the appropriate permissions

    circle-exclamation

    While it is possible to use an existing Google Cloud project, this is not recommended, as the project should be deleted after the migration is complete to invalidate any access Movebot has to your organization.

    1. Enable the required APIs

    • Under APIs & Services -> Library

    • Search for and enable Google Drive API, Gmail API

    • Search for and enable the Google Workspace Marketplace SDK

    1. Configure the OAuth Consent Screen

    • Navigate to APIs & Services -> OAUth consent screen

    • Under User type select Internal. This means the application will only be available and visible to users in your organisation.

    • Fill in the required app information - the details here are internal so don't overthink it

    • Save/Publish

    1. Create and download the service account credentials

    • Navigate to APIs & Services -> Credentials

    • Click Create Credentials and choose Service Account. You do not need to configure any of the optional details here.

    • Open the new service account, then go to Keys -> Add key -> Create new key and choose the JSON type. This will result in a new key being created and downloaded in your browser. This is the key you will need when configuring Movebot.

    1. Configure the Marketplace SDK

    • Under APIs & Services -> Library

    • Search for Google Workspace Marketplace SDK

    • Click Manage

    hashtag
    How to connect the application to your organisation

    The next step in the process is to add the application to your Google Workspace domain and configure permissions for specific OUs and Groups.

    1. Log in to admin.google.com

    2. Navigate to Apps -> Google Workspace Marketplace Apps

    3. Click INSTALL APP

    hashtag
    How to add the connection to Movebot

    1. Log in to Movebot and create a new connection

    2. Select Google Workspace or Google Workspace Mail

    3. Configure the required options

    4. Under

    hashtag
    How to limit Movebot's access to the domain

    With this type of connection, you can restrict Movebot's access to certain OUs and Groups. This is done from the Google Workspace Marketplace Apps section of the Google Workspace Admin console.

    hashtag
    Common Errors

    Movebot supports Google Workspace Mail migrations, including user mailboxes and calendar events. Below are common errors and frequently asked questions related to GWS Mail.

    chevron-rightError: Authentication Failed (invalid-credentials)hashtag

    Cause: Permission scopes were not added correctly

    Resolution: Review your marketplace application setup in Google Cloud Admin and ensure all necessary scopes are assigned correctly. Review all steps above. Sometimes waiting 24 hours can help as well.

    chevron-rightRate limitinghashtag

    Using a custom marketplace application and project means that you are benefiting from Movebot's high quota limits with Google. If you are hitting high numbers of rate limiting, you may need to increase the project quotas for the Google Drive API or Gmail API. Most of the time, this will require approval from Google.

    hashtag
    Supported Features

    Movebot has comprehensive support for Google Workspaces and is well-maintained.

    Feature
    Supported in Movebot

    Tags: googleworkspaces_gmail

    Exchange Online via Restricted EWS Application (RBAC Scoping)

    An alternative way to connect to Exchange Online using scoped RBAC permissions instead of granting organization-wide mailbox access.

    hashtag
    Overview

    Movebot supports connecting to Exchange Online using a restricted application configuration that limits mailbox access to a defined subset of mailboxes within the tenant.

    This method introduces additional configuration complexity and is not recommended unless mailbox-level access restriction is required.

    circle-exclamation

    Google Workspaces Gmail

    Learn how to connect to a Google Workspace Gmail Account

    hashtag
    Introduction

    Connecting to Google Workspaces for Mailbox migrations is fast to set up and fully supported in Movebot. Movebot uses the Google API with Delegate API Access.

    circle-info

    source,destination
    /user:[email protected],/user:[email protected]
    /sharepointsite:/sites/Accounting:/Documents,/teamdrive:Accounting
    source,source_secret,destination
    /mailbox:[email protected],[email protected]:P@ssw0rd1,/mailbox:michael@newdomain
    /mailbox:[email protected],[email protected]:P@ssw0rd2,/mailbox:[email protected]

    /teamdriveid:<team drive ID>

    /teamdriveid:0AI2ezk6QbPvvUk9PVA

    Google Workspace

    /<drive letter>:/<path>

    /D:/

    Windows/OSX Agent

    /<uncpath>/<path>

    /REMOTESERVER/Shared Data

    Windows/OSX Agent

    /mailbox:<email_address>

    /mailbox:[email protected]

    Exchange, Office 365 Outlook, Google Workspace Gmail, IMAP

    /sharepointsite:<site path>:[<document library path>]

    /sharepointsite:/sites/Site1: (all libraries) /sharepointsite:/sites/Site1:/Documents (single library)

    Sharepoint, OnPrem Sharepoint

    /hub:<hub_name>

    /hub:HubName

    BIM360

    /project:<project_name>

    /project:ProjectName

    BIM360

    /bucket:<bucket_name>

    /bucket:BucketName

    Amazon S3, S3 Compatible, BiFrost Cloud, Digital Ocean, Filebase, IDrive Cloud, Lyve Cloud, Wasabi

    /publicfolders:<path>

    /publicfolders:All Public Folders

    Exchange, Office 365 Outlook via EWS

    No prefix

    /Files

    Backblaze B2, SFTP, Dropbox Personal, Google Cloud, Google Drive Personal, Azure Blob, Azure Files

    Yes

    Windows 2008 R2

    Yes - please contact support

    No outbound filtering

    IMAP Server

    Add the access scopes.

    Configure the App Configuration tab - the important options are ensuring that App Visibility= Private, Installation Settings=Admin Only Install, App Integrations=Web app
  • You can then save and publish

  • Locate the internal app you created in the last step and click Admin Install
  • You can then configure access and restrictions

  • Step 2: Create a service account JSON file -
    click Show Advanced.
  • Upload the service account JSON file created in the previous steps

  • Save

  • Contacts

    Fully Supported

    Email Messages and Folders

    Fully Supported

    Private Calendars

    Fully Supported

    Shared Calendars

    Fully Supported

    Resource Calendars

    Fully Supported

    https://www.googleapis.com/auth/gmail.readonly, https://www.googleapis.com/auth/gmail.insert, https://www.googleapis.com/auth/gmail.labels, https://www.googleapis.com/auth/gmail.modify, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.security, https://www.googleapis.com/auth/contacts,https://apps-apis.google.com/a/feeds/calendar/resource/, https://www.googleapis.com/auth/calendar, https://apps-apis.google.com/a/feeds/calendar/resource/,https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.readonly, https://www.googleapis.com/auth/admin.directory.user.security

    We recommend only administrators familiar with Exchange Online PowerShell and RBAC perform this setup. Contact support before proceeding if unsure.

    hashtag
    When should this be used instead of full access?

    If you require:

    • Restricting mailbox access to a defined subset of users

    • Compliance controls preventing tenant-wide mailbox access

    If you are not subject to the above requirements, follow the standard Exchange Online guide.

    hashtag
    Requirements

    To configure this connection method, you will need:

    • A Movebot account

    • An Exchange Online administrator account

    • Access to Microsoft Entra ID

    • PowerShell access to Exchange Online

    hashtag
    How to Configure Restricted EWS Access

    1. Create the application registration in Entra

      • Login to Entra as an administrator for your domain, and navigate to App Registrations.

      • Click New Registration

      • Specify a name for the new application. Leave the remaining fields as default. Click Register.

      • Make a note of the Application (Client) ID. This will be entered into your Movebot configuration.

      • Make a note of the Tenant ID. This will be needed in Movebot

      • Configure the permissions. Click API Permissions --> Add a Permission.

      • Select APIs my organisation uses, then search for Office 365 Exchange Online.

      • Select Application Permissions

      • Enable permission:

      • Grant admin consent

      • Click Certificates and Secrets --> Client Secrets --> New Client Secret

      • Copy the Client Secret Value

    2. Configure the Connection in Movebot

      The following information is must be entered into the Movebot EWS connector.

      • Tenant ID

      • Email Address (does not need to be an administrator account.)

    3. Connect to Exchange Online using PowerShell

    4. Create a Mail-Enabled Security Group

      • Create a group that defines which mailboxes Movebot can access.

      • Add allowed mailboxes:

    5. Retrieve the Distinguished Name of Security Group

      • Copy the entire DistinguishedName value.

      • Example:

    6. Create the Management Scope

      • Replace FULL-DN-HERE with your group’s Distinguished Name.

    7. Register the Service Principal

      • You will need:

        • Application ID (from App Registration)

    8. Assign the EWS RBAC Role with Scope

    9. Validate the Configuration

      • To confirm whether a mailbox is within scope:

      • If the result shows: InScope = True the mailbox is accessible.

    hashtag
    Important Notes

    hashtag
    Connection Test Behaviour

    When using restricted RBAC scoping, the Movebot connection test will fail by design.

    This is expected behaviour and does not indicate a misconfiguration.

    Because the application does not have organization-wide access, automatic mailbox discovery and validation are not supported.

    hashtag
    Permission Propagation Delay

    Permission updates and RBAC scope changes may not take effect immediately. In some environments, it can take up to an hour before access behaviour reflects the new configuration. If testing fails immediately after setup, wait and retry before troubleshooting further.

    hashtag
    Mailbox Mapping Requirement

    When using restricted access:

    • Mailboxes must be mapped manually using CSV Transfer Mapping.

    • Only mailboxes included in the mail-enabled security group can be migrated.

    • Mailboxes outside of the group will return HTTP 403 errors during migration.

    hashtag
    Common Errors

    chevron-rightError: 403 Forbiddenhashtag

    Cause: Mailbox is not a member of the mail-enabled security group used in the management scope.

    Fix: Add the mailbox to the group and retry the migration.

    hashtag
    Supported Features

    Movebot supports Exchange Online mailbox migrations using this configuration.

    Feature
    Supported

    Mailbox Migration

    Fully Supported

    Shared Mailboxes

    Fully Supported

    Archive Mailboxes

    Fully Supported

    Calendar

    Currently, we do not support native API connections for personal Gmail. To connect to personal Gmail accounts, use the IMAP connector.

    Connecting to Google Workspaces by Delegate access provides access to User Data and Shared Drives in the Google Workspace Domain and full support for migrating Drive content.

    hashtag
    Requirements

    To connect Movebot to Google Workspace Gmail, you will need:

    • To have a Google Workspaces Administrator Account

    • To be familiar with the Google Admin Center

    hashtag
    Configuration Steps

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select Google Workspaces Gmail from the list of available connections and set the connection name

    4. Provide an email address for an administrator account.

    5. Provide the primary domain for your Google Workspace tenant

    6. Click "Create Service Account"

    7. Copy the identifier for the service account (created as part of the process above)

    8. Login to Google Admin -

    9. Search for "API Controls" in Google Admin

    10. Click "Manage Domain Wide Delegation"

    11. Click Add New

    12. Provide the "client id" copied from Movebot as the client id

    13. Provide the session scopes, (copy-paste from below)

    1. Save the new client connection in Google and return to Movebot

    2. Click Save and Test connection in Movebot

    3. If the connection has succeeded, you can continue

    hashtag
    Common Errors

    Movebot supports Google Workspace Mail migrations, including user mailboxes and calendar events. Below are common errors and frequently asked questions related to GWS Mail.

    chevron-rightError: Calendar Event Failure (attendees-mapping-required-error)hashtag

    Cause: Event attendee mapping is missing for calendar migration.

    Resolution: You must configure mapping rules for event attendees in Step 4 of your project settings. Without this, calendar events will not be migrated.

    chevron-rightError: Authentication Failed (invalid-credentials)hashtag

    Cause: The required scopes for Google Domain Delegation are missing or misconfigured.

    Resolution: Review your domain delegation setup and ensure all necessary scopes are assigned correctly.Review the documentation.

    hashtag
    Frequently Asked Questions

    chevron-rightHow do I handle the cutover?hashtag

    Movebot simplifies cutover using delta migrations. You can migrate while users are active, then run a final delta to capture any changes after they stop using the source—minimizing downtime.

    If your domain changes during cutover, use "Remap Domains for Cutover" from the Run Action menu. This allows you to specify the old and new domains for source/destination mailboxes, ensuring mappings remain accurate. After remapping, you can continue running delta migrations post-cutover.

    chevron-rightIs it possible to migrate between two existing Google Workspace tenants using Movebot?hashtag

    Answer: Yes. Movebot supports bi-directional, tenant-to-tenant migrations between Google Workspace environments.

    chevron-rightHow do I transfer one specific folder within a mailbox?hashtag

    Answer: Use the CSV Import feature to migrate the specific folder. Example:

    source,destination /mailbox:[email protected]/@MAIL/Important Mail,/mailbox:[email protected]/@MAIL Learn more.

    chevron-rightHow does Movebot handle messages tagged with multiple labels when migrating into Microsoft?hashtag

    Answer: Movebot creates a separate folder in Microsoft for each label from Google. If a message has multiple labels, a separate copy will appear in each corresponding folder.

    chevron-rightHow can I migrate a mailbox larger than 100GB into Microsoft using the Online Archive feature?hashtag

    Answer:

    1. Add a content exclusion rule in Step 6 of your project settings to ignore mail received within the last year.

    2. Run a full migration.

    3. Allow Microsoft’s automatic archiving to move older content into the Online Archive.

    4. Adjust your exclusion rule to ignore mail older than one year.

    chevron-rightHow can I migrate only mail that was received before a specific date?hashtag

    Answer: Yes, from the launch menu, you can select a desired timeframe to include email up to the specified date.

    chevron-rightOnce I've migrated historical mail, can I migrate only mail received after a certain date?hashtag

    Answer: Yes. Select "Start Delta Migration" from the launch menu and choose the desired timeframe for the delta to include only newer mail.

    chevron-rightMigrated calendar events are missing Google Meet links. Why?hashtag

    Answer: This is expected behaviour. Google Meet links are tenant-specific and cannot be transferred between environments. Events will be migrated without their original meeting links.

    chevron-rightDoes Movebot support merging multiple mail accounts into a single mailbox?hashtag

    Answer: Yes. You can use a CSV import to map multiple source mailboxes into a single destination mailbox, organizing each into its own sub-folder.

    Make sure to check "Migrate folder contents" when importing the CSV.

    Example: source,destination /mailbox:[email protected]/@MAIL,/mailbox:[email protected]/@MAIL/source-one/mailbox:[email protected]/@MAIL,/mailbox:[email protected]/@MAIL/source-two/mailbox:[email protected]/@MAIL,/mailbox:[email protected]/@MAIL/source-three

    Learn more.

    hashtag
    Supported Features

    Movebot has comprehensive support for Google Workspaces and is well-maintained.

    Feature
    Supported in Movebot

    Email Messages and Folders

    Fully Supported

    Private Calendars

    Fully Supported

    Shared Calendars

    Fully Supported

    Resource Calendars

    Tags: googleworkspaces_gmail

    Data Migrations with Movebot

    Learn how to run a data migration with Movebot at a high level.

    hashtag
    Introduction

    Movebot was built for data migrations and transfers. Our product has been specifically built to provide fast, simple, and cost-effective migrations.

    Performing a data migration in Movebot is a relatively simple process that can be set up in a few minutes. This guide will give you an overview of how a migration is modeled and executed in Movebot with an explanation of some key concepts to help you navigate the project, along with an overview video demonstrating how Movebot works.

    hashtag
    Video Overview

    hashtag
    Key Concepts in Movebot

    When configuring a migration in Movebot, there are a couple of key concepts that we have adopted to help make the process simple. It's useful to quickly skim through them to understand how we approach migrations.

    hashtag
    #1 Copy vs Migrate

    circle-check

    Migrations in Movebot are not really migrations at all.

    Movebot perhaps should have been called CopyBot as that's essentially what it does 99% of the time. Moving data infers that the content is no longer available at the source. Movebot doesn't move the data out of the source as in most cases this is not ideal and can be downright dangerous.

    For this reason, Movebot copies the data and does not delete it or remove permissions during the migration process. For us, that is the job of the team running the migration, not the machines.

    hashtag
    #2 The Project

    circle-check

    A project is a collection of transfer jobs and settings.

    Projects in Movebot are a collection of transfers that relate to the same source and destination. When configuring a migration, regardless of its size and scope, you must create a project. Projects use the same configuration settings and connect to the same source and destination systems.

    In Movebot, you can create as many projects as you like and storage connections can be shared between them. For example, you can create a Google Workspace connection for a Google Workspace to SharePoint migration, then later create a project for Dropbox to Google Workspace and use that already-configured Google Workspace connection.

    Projects include:

    • A source and destination connection configuration

    • Permission migration configuration

    • Project-wide content inclusion and exclusion options

    hashtag
    #3 Transfers and Jobs

    Transfers and jobs are children of projects. They can be thought of as an individual job or folder mapping between the source and destination locations.

    Transfer Mappings are analogous to Jobs, Transfers, Migrations.

    • They are executed in relative isolation to other transfers

    • They are composed of a single source folder to a destination folder

    • All types are mapped with Transfer Mappings. Users, Team Drives, Servers, Network Drives, External Servers etc.

    circle-info

    Movebot simplifies migrations by treating everything as folders. Transfer mappings are effectively folder mappings, where folders can be users, mailboxes, network drives, subfolders, or virtually anything the connected storage system supports.

    Launching migrations is done by starting transfers.

    Transfers can be launched and executed more than once. Each time a transfer is executed, Movebot executes a scan and builds a picture of the migration.

    hashtag
    #4 Files and Folders

    When executing transfers, transfer mappings include child Files and Folders.

    During the scan stage of a transfer, the scan will build out a complete picture of child folders and files under the transfer, including all targeted files and folders under this transfer.

    hashtag
    #5 The Scan Stage

    The first thing Movebot does when executing anything is run a scan.

    Scanning is a fundamental step in the process and a tool in itself. The scan stage maps out and identifies files that are going to be moved, and how those files can and should be transferred to the destination.

    The scan identifies and resolves a lot of issues before the transfer process begins and generates a snapshot of what we see in the source and how it will appear in the destination.

    The scan functionality in Movebot is used internally as part of the migration, but it is also exposed as the Discovery Scan function on a project level. A discovery scan is purely informational and provides a high-level overview that can be used to scope out and plan your migration.

    hashtag
    #6 The Transfer Stage

    After confirming the scan results, you can initiate the transfer. Movebot handles all of the infrastructure management and scaling for you and automatically optimizes for best results.

    While the transfer is ongoing you have access to the Performance Advisor. This gives you real-time stats about the transfer that is currently in progress.

    Once the transfer is complete, Movebot will generate a post-transfer report so you can review your migration results.

    hashtag
    #7 The Delta Migration

    circle-check

    Deltas update changed and added files

    The delta functionality in Movebot is an overlooked gem. Most migration tools require a hard cutover, but with Movebot, the cutover process can be managed by the admin in a way that best suits them.

    In Movebot, delta migrations iteratively migrate changes that have occurred since the first transfer using the modification time and other metadata by looking at a scan of both the source and the destination folders.

    During a delta migration, Movebot will only transfer and update files that have either been updated or newly created in the source.

    Deltas can be run as many times as needed, including months after the project was initially set up.


    hashtag
    Quick Start Guide

    Transferring or migrating data with Movebot generally comes down to the following process.

    circle-check

    Pro Tip: Run a small migration/transfer first. Don't jump in the deep end too quickly

    We recommend that you run a small test migration before proceeding with a large number of transfers. This will allow you to familiarise yourself with Movebot and gain confidence in configuration.

    hashtag
    Step 1: Creation of a project

    Projects in Movebot are a logical unit of separation. Projects have a source and destination connection, configuration settings, and child transfers.

    To create a project, visit Movebot and Click Create Project. During the configuration stage, you will need to select or create a source and destination connection. You can find detailed information on setting up various connections under

    hashtag
    Step 2: Project Discovery Scan

    With any large migration, we recommend executing a project scan before adding folders. This step is completely optional, but very useful as it provides a high-level overview of the source and highlights potential issues with moving the data to the destination, before you get started.

    The project scan is also a useful tool for adding folder mappings. On each folder or user, it provides:

    • A hierarchical view of files and folders

    • Totals and summary data

    • File and folder sizes

    • Conflicts and issues

    hashtag
    Step 3: Mapping/Add Transfers

    Before any data will be transferred, you will need to configure Transfer Mappings. Transfer mappings tell Movebot to move data from one location to another. They form the base unit of operations in Movebot and live under a project.

    Creating transfer mappings is done from the project dashboard and can be done by selecting the source and destination folders individually or by uploading a CSV file of the mappings.

    hashtag
    Step 4: Launch Transfers

    Once transfers are created, they can be launched. Launching transfers stages them for execution.

    hashtag
    Step 5: Investigate Failures

    Movebot attempts to remedy all failures automatically, but there are often edge cases that we can't accommodate. Failures are shown under a job and can occur for various reasons.

    circle-exclamation

    It's important that you investigate Critical and High Severity errors. Ignoring these will most likely result in data loss if they are not fixed.

    Errors caused by intermittent issues will most likely be resolved in the next stage.

    hashtag
    Step 6: Deltas and Cutover

    The final and often most frequent stage in a migration with Movebot is running Deltas. With a full migration/transfer like what you launched in Step 4, Movebot will move all data from the source to the destination. With a Delta, we will only move files that have changed or are new in the source and not yet moved to the destination.

    If files have changed or failed during the transfer in Step 4, they will be picked up with a delta.

    hashtag
    Conclusion

    There are a lot of nuances with Migrations that cannot be covered in a short document. If you are migrating from one of the major platforms, we recommend reading the and which will give you a good grounding.

    hashtag
    Getting Help

    Our support rocks, really it does, and it's free. Reach out to the team with any questions and we are always more than happy to lend a hand.

    SharePoint Online via Restricted Application Access

    An alternative way to connect to SharePoint Online using site-scoped application permissions instead of granting organization-wide SharePoint access.

    hashtag
    Overview

    Movebot supports connecting to SharePoint Online using a restricted application configuration that limits access to a defined subset of SharePoint sites within the tenant.

    This method introduces additional configuration complexity and is not recommended unless site-level access restriction is required.

    circle-exclamation

    We recommend only administrators familiar with Microsoft Entra, Microsoft Graph API, and application permissions perform this setup. Contact support before proceeding if unsure.

    hashtag
    When should this be used instead of full access?

    If you require:

    • Restricting access to a specific SharePoint site

    • Compliance controls preventing tenant-wide SharePoint access

    If you are not subject to the above requirements, follow the standard .

    hashtag
    Requirements

    To configure this connection method, you will need:

    • A Movebot account

    • A Microsoft 365 administrator account

    • Access to Microsoft Entra ID

    • Access to Microsoft Graph Explorer

    hashtag
    How to Configure Restricted SharePoint Access

    1. Create the Application Registration in Entra

      • Login to Microsoft Entra as an administrator and navigate to App registrations.

      • Click New registration.

    hashtag
    Important Notes

    hashtag
    Connection Test Behaviour

    When using restricted site scoping:

    • The Movebot connection test may not validate all sites automatically.

    • Only the specifically granted SharePoint site will be accessible.

    • This is expected behaviour.

    hashtag
    Permission Propagation Delay

    Permission updates may not take effect immediately.

    In some environments, it can take up to an hour before site access reflects the new configuration. If testing fails immediately after setup, wait and retry before troubleshooting further.

    hashtag
    Site Mapping Requirement

    When using restricted access:

    • Site transfers must be mapped manually using .

    • Only explicitly granted SharePoint sites are accessible.

    • Access to other sites in the tenant will result in failures.

    hashtag
    Supported Features

    Certain features are unsupported using restricted access.

    Feature
    Supported

    https://www.googleapis.com/auth/gmail.readonly, https://www.googleapis.com/auth/gmail.insert, https://www.googleapis.com/auth/gmail.labels, https://www.googleapis.com/auth/gmail.modify, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.security, https://www.googleapis.com/auth/contacts,https://apps-apis.google.com/a/feeds/calendar/resource/, https://www.googleapis.com/auth/calendar, https://apps-apis.google.com/a/feeds/calendar/resource/

    Fully Supported

    Contacts

    Fully Supported

    admin.google.comarrow-up-right

    Application Client ID

  • Application Client Secret

  • Only mailboxes added to this group will be accessible.
    Object ID (from Enterprise Application)

    Fully Supported

    Contacts

    Fully Supported

    Exchange.ManageAsAppV2
    Connect-ExchangeOnline
    New-DistributionGroup -Name "EWS-App-Allowed-Mailboxes" -Type Security
    Add-DistributionGroupMember -Identity "EWS-App-Allowed-Mailboxes" -Member [email protected]
    Get-DistributionGroup "EWS-App-Allowed-Mailboxes" | Select DistinguishedName
    CN=EWS-App-Allowed-Mailboxes,OU=contoso.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=AUSP913A004,DC=PROD,DC=OUTLOOK,DC=COM
    New-ManagementScope -Name "User Mailboxes" `
    -RecipientRestrictionFilter "MemberOfGroup -eq 'FULL-DN-HERE'"
    New-ManagementRoleAssignment `
    -App <EnterpriseAppObjectID> `
    -Role "Application EWS.AccessAsApp" `
    -CustomResourceScope "User Mailboxes"
    Test-ServicePrincipalAuthorization `
    -Identity <ApplicationID> `
    -Resource [email protected]
    New-ServicePrincipal `
    -AppId <ApplicationID> `
    -ObjectId <EnterpriseAppObjectID> `
    -DisplayName "Movebot-Restricted"
    Project-wide sanitization options
  • Platform-specific options

  • Ignored files

  • Overview of mapping status

  • Sharing and permission information

  • Platform Guides
    Connections

    Email Support

    Send us an email and we will get back to you.

    Join our discord

    Get live assistance from our team and community on discord

    Book a meeting

    Book time with our team to discus your migration project or get assistance with configuration.

    Specify a name for the new application. Leave the remaining fields as default. Click Register.

  • Make note of the following values:

    • Application (Client) ID – required for Movebot configuration

    • Directory (Tenant) ID – required for Movebot configuration

  • Configure API Permissions Graph API

    • API Permissions → Add a Permission

    • Select: Microsoft Graph → Application Permissions

    • Enable permission:

    • Click Grant admin consent.

    SharePoint API

    • API Permissions → Add a Permission

    • Select: SharePoint API→ Application Permissions

    • Enable permission:

  • Create a Client Secret

    • Navigate to: Certificates & secrets → Client secrets → New client secret

    • Create the secret and copy the Client Secret Value.

    • This will be required in Movebot.

  • Configure the Connection in Movebot

    • The following information must be entered into the Movebot SharePoint connector:

      • SharePoint Domain

      • Tenant ID

      • Application Client ID

      • Application Client Secret

  • Upload the certificate from Movebot

    Finally, you will need to generate and download the client certificate from Movebot and upload it to Azure for authentication.

    • Under Step 3: click the button Generate and Download Certificate. You should get a PEM file download from Movebot.

    • In Azure - Click Certificates and Secrets -- > Certificates -- > Upload Certificate

    • Upload the file created in step 1

    • The thumbprint in Azure should match the one shown in Movebot

  • Grant Site-Level Access Using Microsoft Graph

    • The Sites.Selected permission alone does not grant access. Site-level permissions must be assigned explicitly.

    • Retrieve the Site ID. Open the following URL in your browser and replace the placeholders:

    • Example:

    • Copy the returned Site ID (GUID) value.

  • Sign in to Graph Explorer

    • Navigate to: https://aka.ms/ge

    • Sign in with a Microsoft account.

    • Grant your user the following delegated permission:

    • (This is required only to assign site permissions.)

  • Assign Application Access to the Site

    • Run the following request in Graph Explorer: POST https://graph.microsoft.com/v1.0/sites/{site_id}/permissions

    • Replace {site_id} with the Site ID retrieved earlier.

    • Request Body:

    • A successful response returns:

  • Assign Application Access to Root Site (Required)

    • Run the following request in Graph Explorer: POST https://graph.microsoft.com/v1.0/sites/root/permissions

    • Use the same request body format as above.

    • This ensures the application can resolve the SharePoint structure correctly.

  • SharePoint Document Libraries

    Supported (no automatic creation)

    Permissions

    Not Supported

    Versions

    Fully Supported

    Modtime Retention

    SharePoint Online guide
    CSV Transfer Mappingarrow-up-right

    Fully Supported

    Outlook Online (Office 365) EWS

    Learn how to connect to an Outlook Online (Office 365) account.

    hashtag
    Introduction

    Connecting to Outlook/0365 for Mailbox migrations is fast to set up and fully supported in Movebot. For this type of connection, Movebot uses the legacy EWS API.

    circle-exclamation

    This connection type has the advantage that it does not send calendar notifications during a migration.

    hashtag
    Requirements

    To connect Movebot to Outlook/0365, you will need:

    • To have Global Admin access to Azure

    • To be familiar with the configuring applications in Azure.

    circle-info

    While not required, you can potentially increase speeds by

    hashtag
    Configuration Steps

    There are two steps to this process. The first is creating the application in Azure with the correct permissions. Next is configuring the connection in Movebot.

    hashtag
    Creating the application in Azure

    1. First, login to Azure as an administrator for your domain, and navigate to App Registrations.

    2. Click New Registration

    3. Specify a name for the new application. Leave the remaining fields as default, then click Register.

    1. Click Grant admin consent for Couchdrop Demo and follow the consent process

    2. Click Certificates and Secrets --> Client Secrets --> New Client Secret

    3. Copy the Client Secret Value

    hashtag
    Enable RBAC for listing users across the tenant

    The EWS API does not allow access to the user database without an additional role.

    1. Open

    2. Find Discovery Management

    3. Add your admin user to the role.

    Note: This role can take up to 24 hours to be reflected in the API. If you need to move forward immediately you can still do so without this role, you will need to map the users using the prefix manually mailbox:

    hashtag
    Configure the connection in Movebot

    1. Login to Movebot and create a new project or task

    2. When configuring the source or destination, choose to Create new Connection

    3. Select Office 365 Outlook (via EWS) from the list of available connections and set the connection name

    hashtag
    Common Errors

    Movebot supports migrations too/from Outlook/Exchange Online for Microsoft 365. Below are common errors, causes, and resolutions, along with answers to frequently asked questions.

    chevron-rightError: The impersonation principal name is invalidhashtag

    Cause: The email address of the admin user is incorrect.

    Resolution: Double-check the admin user's email address in your configuration settings to ensure it's valid and matches the expected domain.

    chevron-rightError: The caller has not assigned any of the RBAC roleshashtag

    Cause: The specified admin user has not been granted the Discovery Management role.

    Resolution: If you're unable to assign the Discovery Management role, use a to map your transfers. This Discovery Management role is only required for listing available mailboxes/automatic transfer mappings. It will not prevent migration.

    chevron-rightError: Unknown failure in response. Code: 403hashtag

    Cause: Missing or incorrect API scopes.

    Resolution: Review steps 7–10 of the to confirm that the required API scopes have been correctly configured and admin consent has been granted.

    chevron-rightError: Invalid client secret providedhashtag

    Cause: The client secret is incorrect.

    Resolution: Make sure you have entered the Client Secret Value, not the Client Secret ID. This is a common mistake during app registration setup.

    chevron-rightError: Mailbox shows 0KB scannedhashtag

    Cause: Mail migration settings may be disabled or duplicate job exists.

    Resolution: First, ensure that mail/contact/calendar migration is enabled in Step 4 of your project settings. Then check for duplicate transfers of the same source mailbox and remove one.

    chevron-rightError: Calendar Event Failure (attendees-mapping-required-error)hashtag

    Cause: Event attendee mapping is missing for calendar migration.

    Resolution: You must configure mapping rules for event attendees in Step 4 of your project settings. Without this, calendar events will not be migrated.

    hashtag
    Frequently Asked Questions

    chevron-rightHow do I handle the cutover?hashtag

    Movebot simplifies cutover using delta migrations. You can migrate while users are active, then run a final delta to capture any changes after they stop using the source—minimizing downtime.

    If the domain has changed during cutover, use "Remap Domains for Cutover" from the Run Action menu. This allows you to specify the old and new domains for source/destination mailboxes, ensuring your mappings remain accurate. After remapping, you can continue running delta migrations post-cutover.

    chevron-rightIs it possible to migrate between two existing Microsoft 365 tenants using Movebot?hashtag

    Answer: Yes. Movebot supports bi-directional migrations between Microsoft 365 tenants, including full tenant-to-tenant migrations.

    chevron-rightCan I connect to GoDaddy M365 tenants using Movebot?hashtag

    Yes. Movebot supports migrations too/from GoDaddy M365 tenants using the same mechanism as regular M365 tenants.

    chevron-rightMy mail migration appears stuck after transferring 50–100GB of datahashtag

    This is likely due to mailbox size limits in Microsoft 365.

    By default:

    • Standard Outlook Online licenses support up to 50GB of mailbox storage.

    chevron-rightHow do I transfer one specific folder within a mailbox?hashtag

    Answer: Use the CSV Import feature to map the specific folder. Example: source,destination /mailbox:[email protected]/@MAIL/Important Mail,/mailbox:[email protected]/@MAIL

    chevron-rightHow does Movebot handle emails from Google that are tagged with multiple labels?hashtag

    Answer: Movebot creates a separate folder in for each label. If a message has multiple labels, a separate copy is placed in each corresponding folder.

    chevron-rightHow can I migrate a mailbox over 100GB into Microsoft using the Online Archive feature?hashtag

    Answer:

    1. Add a content exclusion rule in Step 6 of your project settings to ignore mail received within the last year.

    chevron-rightHow can I use Movebot to restore a folder from an Online Archive?hashtag

    Answer: Use the CSV import feature to map the specific folder from the Online Archive to a destination in the primary mailbox. Example:

    source,destination /mailbox:[email protected]/@MAIL/@INPLACE-ARCHIVE/FolderName,/mailbox:[email protected]/@MAIL/Restored Data

    chevron-rightHow can I migrate only mail that was received before a specific date?hashtag

    Answer: Yes, from the launch menu, you can select a desired timeframe to include email up to the specified date.

    chevron-rightOnce I've migrated historical mail, can I migrate only mail received after a certain date?hashtag

    Answer: Yes. Select "Start Delta Migration" from the launch menu and choose the desired timeframe for the delta to include only newer mail.

    hashtag
    Supported Features

    Movebot has comprehensive support for Outlook Online (Office 365) and is well-maintained.

    Feature
    Supported in Movebot

    Tags: office365outlook

    SharePoint Performance Expectations

    hashtag
    File Density and Performance

    File density (number of files per terabyte) significantly impacts performance.

    File Density
    Impact
    https://<tenant>.sharepoint.com/sites/<siteName>/_api/site/id
    Click Grant admin consent.
    Make a note of the Application (Client) ID. This will be entered into your Movebot configuration.
  • Make a note of the Tenant ID. This will be needed in Movebot

  • Configure the permissions. Click API Permissions --> Add a Permission.

  • Select APIs my organisation uses, then search for Office 365 Exchange Online.

  • Select Application Permissions

  • And then check the permissions detailed below:

  • Provide your tenant id. This is a UUID found when configuring the application.
  • Provide the Application Client ID copied from the configuration step above

  • Provide the Application Client Secret from the steps above

  • Provide the admin users email address

  • Users with extended licenses may have up to 100GB, but will still encounter similar limits.

    Once the mailbox reaches this threshold, migration will appear to stall until auto-archiving policies move older emails to the Online Archive.

    hashtag
    Workarounds

    Option 1: Pause the migration, allow the auto-archiving to complete, then resume the migration.

    triangle-exclamation

    If you take this approach, you will not be able to run a Delta Migration afterward. Doing so will cause archived emails to be re-migrated.

    Option 2 (Recommended): Delete the destination mailbox entirely and start the migration of affected users from scratch using the steps outlined here. This ensures a clean and accurate migration.

    Run a full migration.
  • Allow Microsoft’s automatic archiving to move older content into the Online Archive.

  • Adjust your exclusion rule to ignore mail older than one year.

  • Run a delta migration to capture the latest mail.

  • Shared Calendars

    Fully Supported

    Contacts

    Fully Supported

    Email Messages and Folders

    Fully Supported

    Public Folders

    Source Only

    In-Place Archive

    Fully Supported

    Private Calendars

    Disabling EWS Throttling
    https://admin.exchange.microsoft.com/#/adminRolesarrow-up-right
    CSV import
    configuration steps

    Fully Supported

    Sites.Selected
    Sites.Selected
    https://contoso.sharepoint.com/sites/Finance/_api/site/id
    Sites.FullControll.All
    {
      "roles": ["write"],
      "grantedToIdentities": [
        {
          "application": {
            "id": "<APPLICATION_CLIENT_ID>",
            "displayName": "<APPLICATION_DISPLAY_NAME>"
          }
        }
      ]
    }
    201 Created
    full_access_as_app

    Low density – Better performance

    ~500,000 files / TB

    Medium density - Typical performance

    >1,000,000 files / TB

    High density – Slower performance

    Lower file counts with higher data volume generally yield faster migrations and lower API consumption.


    hashtag
    What Are Resource Units?

    Resource Units (RUs) are how Microsoft measures the cost of API operations. Each action your migration tool performs consumes a specific number of RUs.

    hashtag
    Resource Unit Costs for Movebot Migrations

    Operation

    Resource Units (per file or folder)

    Scan Directory (Excluding Permissions and Version History)

    2

    Create Folder (Non-Delta)

    3

    File Upload

    2

    File Download


    hashtag
    Real-World Example

    The following tables provide estimated resource unit (RU) consumption when using one Movebot transfer job to copy a single folder comprising of:

    • 1 TB data

    • 500,000 files

    • 50,000 folders

    Each table illustrates how RU usage varies depending on the type of migration — whether migrating into SharePoint, between tenants, within the same tenant, or out of SharePoint.

    circle-info

    Review SharePoint API Limits to understand how usage in this example compare to your tenant’s daily quota.

    hashtag

    hashtag
    Migration Into SharePoint (External ➝ SharePoint)

    Operation
    Count
    RU per Item
    Total RUs

    Create Folder

    50,000

    3

    150,000

    Transfer Files (Upload)

    500,000


    hashtag

    hashtag
    Migration Between SharePoint Tenants (Tenant-to-Tenant)

    Source Tenant (Scan + Transfer Files)

    Operation
    Count
    RU per Item
    Total RUs

    Scan (Folders)

    50,000

    2

    100,000

    Transfer Files (Download)

    500,000

    Destination Tenant (Create Folders + Transfer Files)

    Operation
    Count
    RU per Item
    Total RUs

    Create Folder

    50,000

    3

    150,000

    Transfer Files (Upload)

    500,000

    Total (source + destination): 1,700,000 (RUs)


    hashtag

    hashtag
    Migration within a single SharePoint Tenant (Separate App Registrations)

    Source App (Scan + Transfer)

    Operation
    Count
    RU per Item
    Total RUs

    Scan (Folders)

    50,000

    2

    100,000

    Transfer Files (Download)

    500,000

    Destination App (Create + Transfer)

    Operation
    Count
    RU per Item
    Total RUs

    Create Folder

    50,000

    3

    150,000

    Transfer Files (Upload)

    500,000

    Total (source + destination): 1,700,000 (RUs)


    hashtag

    hashtag
    Migration out of SharePoint (SharePoint ➝ External Platform)

    Operation
    Count
    RU per Item
    Total RUs

    Scan (Folders)

    50,000

    2

    100,000

    Transfer Files (Download)

    500,000


    hashtag

    hashtag
    Summary

    Scenario

    Source RUs

    Destination RUs

    Total RUs

    Into SharePoint (External ➝ SharePoint)

    —

    1,150,000

    1,150,000

    Tenant-to-Tenant SharePoint

    hashtag
    Tips and Tricks

    • These are first-pass estimates. Delta passes will vary based on change volume.

    • API usage is measured in resource units (RUs), not raw call counts.

    • For tenant-specific daily limits, refer to the SharePoint API Limits page.

    • Consider when migrating large numbers of small files.

    <50,000 files / TB

    [email protected]envelope

    1

    2

    1,000,000

    Total

    —

    —

    1,150,000

    1

    500,000

    Subtotal

    —

    —

    650,000

    2

    1,000,000

    Subtotal

    —

    —

    1,150,000

    1

    500,000

    Subtotal

    —

    —

    600,000

    2

    1,000,000

    Subtotal

    —

    —

    1,150,000

    1

    500,000

    Total

    —

    —

    600,000

    600,000

    1,150,000

    1,750,000

    Same-Tenant (Separate Apps)

    600,000

    1,150,000

    1,750,000

    Out of SharePoint (SharePoint ➝ External)

    600,000

    —

    600,000

    Ludicrous Mode