- The email address of a super admin account for your source and destination domain.
- Set up a service account and enabled the correct Google APIs for both the source and destination domains.
When migrating Google Drive to Google Drive, there are some special considerations you should be aware of for a successful migration. Please see the Google Drive to Google Drive Migrations - Best Practice and Concepts article.
Setting up a service account and Google APIs
In order to access your users' email, files etc. you will need to create a google project and set up a service account. You will also need to enable the relevant APIs.
Firstly, go to your Google Cloud console, (login as an administrator if you are not already) and click 'Project' at the top and then 'Create Project'.
Enter a name for your project and click 'Create'.
When you have created your project, click on the options menu in the top left of the page, then 'API Manager', then 'Credentials'. Click on 'New credentials' and then 'Service account key'
Next, select 'New service account', name it anything and select 'Project' and then 'Owner' as the role from the dropdown list, finally select P12 as the key type and click 'Create'. Upon clicking 'Create', a P12 file will be downloaded; this is important for later so keep a note of where you downloaded it.
Dismiss the dialog box and on the right hand side of the page, click 'Manage service accounts' and click the three dots beside your service account, then select 'Edit'
You should now be met with the edit service account window, check 'Enable Google Apps Domain-wide Delegation' and click 'Configure consent screen'.
Next, give your product any name you wish and click 'Save' to be taken back to the previous window. Click 'Save' again.
Now make a note of the email address of the service account you just made as you will need this later to configure CloudM Migrate. Click 'View Client ID' in the right hand column of the service account table and make a note of that too.
Next, click on the options menu again, then 'API Manager', then 'Library'. This will take you to a page where you can search for and enable various google APIs, just use the search box and the enable button at the top of each APIs respective page to enable to following APIs.
- Admin SDK
- Drive API
- Gmail API
- Calendar API
- Contacts API
- Tasks API
- Groups Migration API
Nearly there! Once all the APIs are enabled, launch the Google Apps Admin Console for your source domain.
Go to 'Security', then to 'Show More', then to 'Advanced Settings' and then finally to 'Manage API client access'. Enter the Client ID you noted earlier into the 'Client Name' field and paste the following into the 'Scopes' field:
https://www.googleapis.com/auth/admin.directory.resource.calendar, https://www.googleapis.com/auth/gmail.settings.sharing, https://mail.google.com/, https://sites.google.com/feeds/, https://www.google.com/m8/feeds, https://www.googleapis.com/auth/admin.directory.group, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/apps.groups.migration, https://www.googleapis.com/auth/calendar, https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/drive.appdata, https://www.googleapis.com/auth/email.migration, https://www.googleapis.com/auth/tasks, https://www.googleapis.com/auth/gmail.settings.basic
Finally, click on 'Authorize' on the right on the 'Scopes' field and an entry for your Client ID and its associated now-accessible APIs will appear. Do this for both the source and destination domains.