Migrate mail from Google Workspace to Microsoft 365 (manual method)
Following procedures are to be performed, if you are attempting manual migration of Google Workspace with either Classic or New EAC:
Create a Google Service Account
Using a Chrome browser, sign into your Google Workspace admin console at admin.google.com.
In a new tab or window, navigate to the Service Accounts page.
Select Create project, name the project and choose Create.
Select + Create service account, enter a name, choose Create and then Done.
Open the Actions menu, select Edit, and take note of the Unique ID. You'll need this ID later in the process.
Open the Show domain-wide delegation section.
Select Enable G Suite Domain-wide Delegation, enter a product name for the consent screen, and choose Save.
Note
The product name is not used by the migration process, but is needed to save in the dialog.
Open the Actions menu again and select Create key.
Choose JSON, then Create. The private key is saved to the download folder on your device.
Select Close.
Enable API usage in your project
If your project doesn't already have all of the required APIs enabled, you must enable them.
Go to the Developer page for API Library and sign in as the Google user you used above in Create a Google Service Account.
Select the project that you used above.
Search for the following APIs; each one must be enabled. Select Enable to enable them for your project:
- Gmail API
- Google Calendar API
- Contacts API
- People API
Grant access to the service account for your Google tenant
Go to the Google Workspace Admin page and sign in as Google Workspace admin for your tenant.
Click Security, then click API Controls, and then click Manage Domain Wide Delegation.
Next to the API Clients list, click Add new.
In Client ID, type the ClientId for the service account you created in the Create a Google Service Account section above.
In OAuth Scopes, add the required scopes in comma-separated format, with no spaces in between. For example:
https://mail.google.com/,https://www.googleapis.com/auth/calendar,https://www.google.com/m8/feeds/,https://www.googleapis.com/auth/gmail.settings.sharing,https://www.googleapis.com/auth/contacts
If the OAuth Scopes are entered incorrectly, the resulting list won't match and the migration process will fail later, after you start the migration batch.
Click Authorize. Verify that the resulting list shows the expected four (4) OAuth scopes.
Important
It may take anywhere from 15 minutes to 24 hours for these settings to propagate.