Let's POWER Automate

From no-code to low-code

Menu
  • Expressions
  • Filters
  • General
  • Application specific solutions
    • Dataverse
    • Excel
    • Forms
    • Outlook
    • Planner
    • Power Apps
    • SharePoint
    • Teams
  • Triggers
  • Ready to use solutions
    • Approval Process Template
    • Task Delegation App
    • The Ultimate Power Automate expressions cheat sheet
    • Power Automate HTTP requests to SharePoint cheat sheet
    • Power Automate HTTP requests to Graph API cheat sheet
  • ABOUT ME
  • Get help with your flow
  • POWER PLATFORM SERVICES
Menu

How to move list between SharePoint tenants with Power Automate

Posted on July 24, 2022August 13, 2023 by Tom

“With the old SharePoint I was able to create a template from a list and move it to another environment, how can I do that with SP Online, can Power Automate help?”


If you’ve got multiple SharePoint environments, e.g. development and production one, you’ll encounter a situation when you must move a solution. And one piece to move might be related SharePoint lists. While it was easy in the past to move lists (you could export list including all content), SharePoint online doesn’t have this feature. You can create copies only from lists which are already on the environment, but what about other environments? How can you move a list from your development environment to production?

Export the list

The approach is very similar to creating a new list from existing ones, but this time it’s not a single flow. You’ll need at least two – one flow to extract the list from the current environment, and one to import it in the new environment.

The extracting flow will be simple, just two actions – manual trigger and ‘Send an HTTP request to SharePoint’.

Method: POST

Uri: _api/Microsoft.Sharepoint.Utilities.WebTemplateExtensions.SiteScriptUtility.GetSiteScriptFromList()

Headers:
{
  "accept": "application/json;odata=verbose",
  "content-type": "application/json;odata=verbose"
}

Body:
{
"listUrl": "<full list url>"
}

Run the flow and open the flow run history. The output of the HTTP request is the list structure – store it somewhere, e.g. in a text file or in an email.

Power Automate move SharePoint list

Import the list

Once you have the list structure, you can use it to create the list on another environment. Start with a manual trigger and a ‘Compose’ action, and copy the output from the HTTP request in there.

Add ‘Parse JSON’ to remove all the special characters from the schema. Navigate in the JSON to get only the content form the GetSiteScriptFromList and parse it. Use the whole content of the ‘Compose’ action as the sample schema.

outputs('Compose')?['d']?['GetSiteScriptFromList']

Finish the flow by the ‘Send an HTTP request to SharePoint’ action to use the schema to create the list.

Method: POST

Uri:
_api/Microsoft.Sharepoint.Utilities.WebTemplateExtensions.SiteScriptUtility.ExecuteTemplateScript()

Headers:
{
  "accept": "application/json;odata=verbose",
  "content-type": "application/json;odata=verbose"
}

IMPORTANT NOTE: it seems there was a change in the requests, now you must include also information whether the list should be added to the navigation (true/false) and rename the list to a nicer name.

{"script": "{\"actions\":[@{replace(replace(string(setProperty(setProperty(body('Parse_JSON')?['actions'][0],'listName','NewListName'),'addNavLink',true)),'\','\\'),'"','\"')}]}"}
Power Automate move SharePoint list

Run the flow and it’ll create the list on the SharePoint site in another environment.

Summary

Even though Microsoft removed the functionality to easily move SharePoint list between environments, you can build similar functionality using Power Automate. One flow to export the list on the source environment, another flow to import in on the target environment, and the list definition to be manually moved between the two flows.


πŸš€ Master Power Automate

Join 2,000+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

3 thoughts on “How to move list between SharePoint tenants with Power Automate”

  1. jr says:
    March 17, 2023 at 9:28 pm

    Like you mentioned, this is like creating a list from an existing list. What I am looking for is moving a list to a new site, meaning that all of the data in the list goes with it. This was available in SharePoint Designer, but i am having trouble doing it now with power automate and O365

    Reply
    1. Tom says:
      March 29, 2023 at 8:14 pm

      Hello jr,
      you’ll need another flow to do that, a flow that’ll list all items in the original list and recreate them in the new one.

      Reply
  2. Tung says:
    May 27, 2024 at 6:54 am

    What would be your recommendation when deploying an incremental update and we must synchronize schema changes between lists in 2 SharePoint site?

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

πŸš€ Master Power Automate

Join 2,000+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

Still exchanging emails to get things approved?

Use the Approval Process Template and the Task Delegation App to skip the hard part and deploy an automated, fully functional approval solution on a SharePoint list in minutes! And then the next one, and the next one...

Approval Template Preview ✨ Learn more ✨

Turn ideas into flows with ease!

Grab the complete Power Automate Cheat Sheet Bundleβ€”everything you need to master expressions, SharePoint HTTP calls, and Graph API in Power Automate.

Cheat Sheet Bundle Preview ✨ Get the Cheat Sheets

Didn't find what you were looking for?
Need to adjust a solution to fit your needs?
Or would you just like to get an assistance from somebody with thousands of hours of experience with Power Automate?

Power Automate blogs worth visiting

Damien Bird
Dennis (Expiscornovus)
Paul Murana

©2025 Let's POWER Automate | Theme by SuperbThemes