My company have multiple site collections that are all getting quite large and we will reach our overall storage limit within 6 months. Currently we have only a manual solution for moving data off the sites in to external HDD which is very time consuming.


I would like to automate this process by using metadata associated to the content types (currently using 3 content types) to activate a workflow to copy data to an archive site collection then delete the data from the source. This will allow me to then use ShareGate to copy the data from SP to the HDD.


I need to maintain all metadata as well as all versions as this is a company requirement. Currently we have have 8 Site collections with separate DB that I wish to use this workflow on, with all data going to the one Archive Site collection again on a separate DB.


I have tried quite a few different SPD workflows but as I was researching more and more found that OOTB is unable to migrate the metadata and maintaining the version history.

What I'm seeking is a code or some advise on how to achieve this automation.


2 Answers 2


Although I don’t see any way you can do this directly with Sharegate, there may be a workaround. I'm thinking instead of using a workflow, you could use Sharegate Powershell and the Windows Task Scheduler to migrate the desired content periodically. This will depend on the complexity of your environment, and there is a caviat to the process since Sharegate won't delete any source content, but maybe this will give you ideas. You can use a CSV file to run a copy of multiple lists and libraries in PowerShell with Sharegate and use the -View parameter to copy items based on a SharePoint view. If you can create a view that filters the desired metadata in your libraries (if there's not too many), then you can create a script that will copy these items to the new Site Collection. Since you can use the Windows Task Scheduler to schedule your PowerShell scripts then you can run it when you need. It won't delete anything from the source library, but you will have a list of copied items if you look at the migration report and there might be a way to create a secondary script that will use that data to delete the items. I'm aware this is a long shot, and might require a lot of work, but who knows, maybe it will lead to a solution for you. Good luck!


Check this article which lets you how to move/migrate document/files from one location to another whilst preserving its metadata properties and version history.

Using Content and Structure to move files with versions and Metadata

Programmatically – move document with version history


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.