Learn how to connect to an Outlook Online (Office 365) account.
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.
This connection type has the advantage that it does not send calendar notifications during a migration.
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.
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.
Creating the application in Azure
First, login to Azure 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, then 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
And then check the permissions detailed below:
full_access_as_app
Click Grant admin consent for Couchdrop Demo and follow the consent process
Click Certificates and Secrets --> Client Secrets --> New Client Secret
Copy the Client Secret Value
Enable RBAC for listing users across the tenant
The EWS API does not allow access to the user database without an additional 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:
Configure the connection in Movebot
Login to Movebot and create a new project or task
When configuring the source or destination, choose to Create new Connection
Select Office 365 Outlook (via EWS) from the list of available connections and set the connection name
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
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.
Error: The impersonation principal name is invalid
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.
Error: The caller has not assigned any of the RBAC roles
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 CSV import to map your transfers. This Discovery Management role is only required for listing available mailboxes/automatic transfer mappings. It will not prevent migration.
Error: Unknown failure in response. Code: 403
Cause: Missing or incorrect API scopes.
Resolution: Review steps 7–10 of the configuration steps to confirm that the required API scopes have been correctly configured and admin consent has been granted.
Error: Invalid client secret provided
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.
Error: Mailbox shows 0KB scanned
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.
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.
Frequently Asked Questions
How do I handle the cutover?
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.
Is it possible to migrate between two existing Microsoft 365 tenants using Movebot?
Answer: Yes. Movebot supports bi-directional migrations between Microsoft 365 tenants, including full tenant-to-tenant migrations.
Can I connect to GoDaddy M365 tenants using Movebot?
Yes. Movebot supports migrations too/from GoDaddy M365 tenants using the same mechanism as regular M365 tenants.
My mail migration appears stuck after transferring 50–100GB of data
This is likely due to mailbox size limits in Microsoft 365.
By default:
Standard Outlook Online licenses support up to 50GB of mailbox storage.
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.
Workarounds
Option 1:
Pause the migration, allow the auto-archiving to complete, then resume the migration.
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.
How do I transfer one specific folder within a mailbox?
Answer: Use the CSV Import feature to map the specific folder.
Example:
source,destination
/mailbox:[email protected]/@MAIL/Important Mail,/mailbox:[email protected]/@MAIL
How does Movebot handle emails from Google that are tagged with multiple labels?
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.
How can I migrate a mailbox over 100GB into Microsoft using the Online Archive feature?
Answer:
Add a content exclusion rule in Step 6 of your project settings to ignore mail received within the last year.
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.
How can I use Movebot to restore a folder from an Online Archive?
Answer: Use the CSV import feature to map the specific folder from the Online Archive to a destination in the primary mailbox.
Example:
How can I migrate only mail that was received before a specific date?
Answer: In your project settings, add a content exclusion rule using
"Files/Objects modified after UTC time" to filter messages received after the specified date.
Once I've migrated historical mail, can I migrate only mail received after a certain date?
Answer: Yes. Select "Start Delta Migration" from the launch menu and choose the desired timeframe for the delta to include only newer mail.
Supported Features
Movebot has comprehensive support for Outlook Online (Office 365) and is well-maintained.