SharePoint Online Migration - Locus IT Services

SharePoint Online Migration

Locus IT ServicesSharePoint DevelopmentsSharePoint Online Migration
Posted by Akshay | , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,  |

SharePoint Online Migration

The following Microsoft SharePoint Online Migration API description is based upon use of the SharePoint Client Side Object Model (CSOM). We will recommend you to use NuGet packages when you reference CSOM in your solution. Using the API Migration requires a temporary storage container.

This container is already only openable by someone having a SAS key access to the container. The gGoal of this feature is to allow to provide eEncrypted content at rest to the API meaning that even if a malicious user has access to the Container he won’t be able to use its content.

When using the encryption parameter, everything will be encrypted at rest and the key will need to be preserved in order to read the logs and the real time progress. The main benefits is making the content useless for a malicious user who would manage to breach into the container.

This comes with a small cost of performance. This feature is optional when using the Microsoft SharePoint Online Migration API and it is recommended to only use it for the most confidential information since it does reduce the speed of the migration by a little portion. Microsoft removes the key once the migration job is finished and there is no way to recover the key if it is lost, not even from support.

SharePoint Online Migration Methods

1. CreateMigrationJob

This method will creates a new migration import job and queues it up for later processing by a separate timer job. The job will have a well formed import package that is located in the Azure Blob Storage Containers specified in this method.

The Service level agreement (SLA) for migration job processing is be controlled through pre-configured queue and work load throttling settings, and there is no guaranteed SLA or return time for a submitted job.


  • gWebID
  • azureContainerSourceUri
  • azureContainerManifestUri
  • azureQueueReportUri
  • Return values

2. GetMigrationJobStatus

This method queries the status for the specified migration job queue. It is an optional verification after calling the CreateMigrationJob method. Once the migration job has been completed it will no longer show up in the queue and the notification queue or log output should be checked for detailed status.


  • Id
  • Return values


1. SPMigrationJobState

SPMigrationJobState will tracks possible major states in the import queue.

2. Import Package Structure

Package structure is depends on a constrained version of the Content Deployment package schema.

  • Content structure
  • ExportSettings.XML
  • LookupListMap.XML
  • Manifest.XML
  • Requirements.XML
  • RootObjectMap.XML
  • SystemData.XML
  • UserGroupMap.XML
  • ViewFormsList.XML

3. Logging

The logs that have import pipeline creates must be easily parsed by machine with a goal of being able to pinpoint where and when failures occurs, including warnings and errors, and It’ll tell the consumer or the ISV where and why the failure occurred. As the import is processed by the import pipeline then the job results are placed into log files at the server side file system.

4. Changes for Those Using the “Ship Disk” Option

To use the Microsoft SharePoint Online Migration API, you must have a temporary storage container in Azure. When uploading the files into the temporary storage MD5 is required as a property on every file.

Since the MD5 is generated at the source instead of upload time in Azure, The Microsoft can confirm the integrity of the file directly against the source MD5.

5. What is Stored in Azure Blob Containers?

The Microsoft SharePoint Online Migration API requires the Azure Container for content passing and also for log and queue reporting. There are two new optional parameters in manifest.xml:

  • MD5Hash
  • InitializationVector

Locus IT has worked with industries that utilize Microsoft SharePoint and provides Microsoft SharePoint Migration support services. For more details please contact us and we’ll surely get back to you.

Locus IT Project Management Office
What’s it?