Program's components

CodeTwo Office 365 Migration consists of the following components: Data Provider Service and Administration Panel. To provide you with maximum safety, there are no CodeTwo agents on the intermediary, third-party servers.

CodeTwo Office 365 Migration Data Provider Service

This is a Windows service responsible for accessing source Exchange server mailboxes via MAPI, as well as for extracting and preparing items for migration. The service is installed only when you configure a MAPI source connection.

Data Provider Service runs under the account the administrator configures in the program's source server connection. This account is used by the service to create a MAPI profile, which in turn is used to access source mailboxes. Using MAPI to access source mailboxes demands the software to be actually installed in the migration source domain. Meeting the software's specific user and service account requirements is necessary for the MAPI to work, but thanks to this CodeTwo Office 365 Migration supports Exchange Server 2010 without SP1, which does not feature modern mailbox accessing methods (e.g. EWS - Exchange Web Services).

Administration Panel

As the name suggests, the Administration Panel is a command and control center of the software in the form of graphical user interface. However, it also runs a process that is responsible for migrating from IMAP sources and picking up data extracted by the Data Provider Service and sending it to the target server.

EWS Managed API libraries are used by the CodeTwo Office 365 Migration Administration Panel to call EWS methods on the target Office 365 server, to access target mailboxes. Windows PowerShell is also used by CodeTwo Office 365 Migration to connect to the target server. This is to check if the configured target server's admin account has application impersonation rights granted (if not, the software will do that on its own).

In order for CodeTwo Office 365 Migration to perform migration jobs, you need to leave the Administration Panel open. 

The Administration Panel consists of two tabs: Dashboard and JOBS.


The Dashboard provides access to most of the configuration and monitoring options. There is no rocket science behind it, so let us keep its description short. To find out about specific features of the Dashboard and its usage, see this article.


The JOBS tab provides access to jobs configuration and control, as well as reporting features.

Jobs are simply sets of migration configurations. If the source Exchange Server mailboxes are accessed via MAPI, the software is limited to only one source Exchange Server connection. There are no such limitations for source connections via EWS or IMAP - a user can configure multiple of them. As for connections to target Office 365, it is possible to create many target connections in the program.

The program allows you to create multiple jobs. Several jobs can share a common source and/or target connection or each job may have an individual source/target connection configured.

Multiple jobs may come in handy, for example, when the old source server is about to become decommissioned, and the users are to be split and moved to two (or more) different environments. In this scenario, multiple jobs can be configured for different sets of mailboxes to be migrated to different target servers.


Many jobs can be created and saved, but only one can be running at the given time.

Another possible use could be a more complex scenario involving staged migration. For example, you want to migrate a few test mailboxes first. If that works, you will migrate newest emails and all contacts from all mailboxes first, then migrate the rest items from all mailboxes but in a certain order (e.g. mailboxes grouped by a company department). At the very end, you would like to rescan all the mailboxes on the old source server to make sure you did not miss a thing, etc. For all of those separate jobs can be configured instead of reconfiguring the existing migration settings.


Jobs can be executed either automatically, using a built-in scheduler, or manually, if desired. The Administration Panel must be kept open for the scheduler to work, though.

In this article

Was this information useful?