Tools — Restricted Access
Password
Incorrect password. Try again.
AI-Powered Documentation

ONE CALL.
SEVEN
OUTPUTS.

Paste any Zoom transcript and get a user guide, SOP, training quiz, action items, architecture diagram, and more — all at once.

Drop a .txt or .vtt file here, or click to browse

or paste directly
0 characters
User Guide
SOP
Training
Action Items
Architecture
Release Notes
Please paste a transcript before analyzing.
Generating your outputs
Running all outputs in parallel...
YOUR
OUTPUTS
Infrastructure Tool

ENV
MIGRATION
BUILDER.

Select your platform below — the form customizes to show exactly the fields you need, with descriptions and examples for each one.

Select platform to migrate
📋
SharePoint Migrate lists, libraries, and site content between SharePoint environments.
Select a platform above to load the migration form
GUIDE Guide

HOW TO FILL
THE MIGRATION
TOOL.

This guide walks you through every single field in the Migration Builder — one step at a time. You don't need to be technical. Just follow each step, copy what you see on screen, and paste it in.

PRE

Before You Start

Things to have ready before opening the tool

You will need access to these 3 things

Make sure you can log into all three before you begin. If you don't have access to any of them, ask your IT admin first.

Microsoft 365 account — the one you use for SharePoint, Power Apps, and Teams at work
Azure Portal access — go to portal.azure.com and confirm you can log in. You need Global Admin or Application Admin to create App Registrations.
Azure DevOps access — go to dev.azure.com and confirm you can see your project and pipelines.
Notepad or text file open — you'll be copying values from multiple browser tabs. Keep somewhere to paste them temporarily as you go.
Tip: Open all three in separate browser tabs — portal.azure.com, make.powerapps.com, and dev.azure.com — before you start filling the tool.
01

Application Name

Section 01 — Project Info

Application / Project Name
Required
This is just a nickname you give this migration. It appears in your pipeline name and YAML comments. It doesn't need to match anything official — just make it recognizable.
What to type here
Think of a short name that describes what you're migrating. Use hyphens instead of spaces. No special characters.
Good examples
HiringPortal HR-Operations ProjectManagement-App ContosoIntranet
Rule: No spaces. No special characters. Just letters, numbers, and hyphens.
02

Source & Target Environment

Section 01 — Project Info

Source Environment — migrating FROM
Required
Where your current live data lives — the system people are actually using right now.
If you're copying from your live production system → pick production
If from a pre-release environment → pick staging
Most common answer: production — you're copying real data into a test environment.
Target Environment — migrating TO
Required
Where the data is going — usually a development or test environment where you can make changes without breaking the live system.
If copying TO a test/dev environment → pick development
Never set target to production unless you really know what you're doing — it can overwrite live data.
03

SharePoint Production URL

Section 02 — Environments

Prod SharePoint Site URL
Required
The web address of your production SharePoint site — the one your team actually uses day to day. The migration tool reads your lists FROM this address.
Exactly how to find it
1
Open your browser and go to your production SharePoint site
2
Look at the address bar at the top — it will show something like:
https://contoso.sharepoint.com/sites/Operations/Lists/Projects
3
Copy only up to the site name — everything up to /sites/YourSiteName
4
Stop there — do NOT include /Lists/ or anything after it
What it should look like
https://contoso.sharepoint.com/sites/Operations https://mycompany.sharepoint.com/sites/HRPortal
Quick check: Your URL should end with the site name. If you see /Lists/ or /SitePages/ in the URL — delete everything from that slash onward.
04

SharePoint Dev/Test URL

Section 02 — Environments

Dev SharePoint Site URL
Required
The web address of your development or test SharePoint site — where data will be copied TO. It's usually a separate site in the same company SharePoint.
1
Open your dev/test SharePoint site in your browser
2
Copy the URL the same way as Step 3 — stop at the site name
What it should look like
https://contoso.sharepoint.com/sites/Operations-Dev https://mycompany.sharepoint.com/sites/HRPortal-Test
Don't have a dev site yet? Go to SharePoint Admin Center → Active sites → Create → Team site. Name it with "-Dev" or "-Test" at the end.
05

Power Platform Production URL

Section 02 — Environments (covers Power Apps + Power Automate)

Prod Power Platform Environment URL
Required
The web address of your production Power Platform environment — where your Power Apps and Power Automate flows live in production. It has "crm.dynamics.com" in it — completely different from a SharePoint URL.
Exactly how to find it
1
Open a new tab and go to make.powerapps.com
2
Top-right corner — you'll see a dropdown showing the current environment name. Click it and switch to Production
3
Click the gear icon ⚙ at the top-right
4
Click Session details
5
A panel opens — find Instance URL and copy that value
What it looks like
https://contoso.crm.dynamics.com https://org12345abc.crm.dynamics.com
It always ends in .crm.dynamics.com — if yours looks different, make sure you're looking at the Instance URL field specifically.
06

Power Platform Dev URL

Section 02 — Environments

Dev Power Platform Environment URL
Required
Same type of URL — but for your development or sandbox Power Platform environment. Apps and flows get imported INTO this environment.
1
Go to make.powerapps.com again
2
Switch to your Development or Sandbox environment in the top-right dropdown
3
Gear icon ⚙ → Session details → copy Instance URL
What it looks like
https://contoso-dev.crm.dynamics.com https://orgdev456xyz.crm.dynamics.com
No dev environment? Go to admin.powerplatform.microsoft.com → Environments → New → choose "Developer" or "Sandbox" type.
07

Solution Name

Section 02 — Environments

Solution Name
Required
A Power Platform Solution is like a container — it holds your Power Apps, Power Automate flows, and other components together so they can be moved as a group. You need the exact technical name — not the display name.
1
Go to make.powerapps.com
2
Click Solutions in the left side menu
3
Look at the Name column — NOT the Display Name column
4
The Name column has no spaces — it looks like one long word. Copy that exact value.
Name vs Display Name — use the Name column
Display Name: Hiring Operations Portal ← DON'T use this Name: HiringOperationsPortal ← USE THIS
Important: Your flows MUST be inside this solution — not in "My Flows" — for the pipeline to migrate them. To add: open the solution → Add existing → Automation → Cloud flow.
08

Create an App Registration

Section 03 — Azure AD — Do this FIRST before Steps 9–12

What is an App Registration?

Think of it like creating a "robot employee" account in Azure. This account is what the migration pipeline uses to log into your SharePoint, Power Apps, and other Microsoft services automatically — without needing a real person logged in. You create it once and it gives you three things: Tenant ID, Client ID, and Client Secret.

How to create the App Registration
Do this first
1
Go to portal.azure.com — sign in with your work Microsoft account
2
In the search bar at the top, type Azure Active Directory and click it
3
In the left menu, click App registrations
4
Click + New registration
5
Fill in: Name = PowerPlatform-Migration-App | Leave everything else as default
6
Click Register — you'll land on the app's Overview page. Keep this tab open!
You need Global Admin or Application Admin to do this. If you get a permission error, ask your IT admin to complete this step.
09

Tenant ID

Section 03 — Azure AD Auth

Tenant ID
Required
Your company's unique Microsoft ID number. Every Microsoft 365 company has exactly one and it never changes. It's a GUID — a long string of letters and numbers with dashes.
1
On the App Registration Overview page from Step 8
2
Look for Directory (tenant) ID
3
Click the copy icon next to it and paste it into the tool
What it looks like
72f988bf-86f1-41af-91ab-2d7cd011db47
10

Client ID

Section 03 — Azure AD Auth

Client ID (Application ID)
Required
The unique ID of the App Registration you just created. Think of it as the "username" the migration pipeline uses to log in. Also called Application ID.
1
Stay on the same App Registration Overview page from Step 8
2
Look for Application (client) ID near the top of the page
3
Click the copy icon next to it
What it looks like
a1b2c3d4-e5f6-7890-abcd-ef1234567890
Same page as Tenant ID — you can grab both from the same Overview screen without going anywhere else.
11

Client Secret

Section 03 — Azure AD Auth — Read carefully

Client Secret
RequiredOnly shown once
The password the migration pipeline uses to prove it's allowed to access your Microsoft 365 data. You generate it inside the App Registration. It is only shown to you one time — once you navigate away it's hidden forever.
1
On your App Registration page, click Certificates & secrets in the left menu
2
Click + New client secret
3
Description: type Migration Pipeline Secret | Expires: choose 24 months
4
Click Add
5
A new row appears — look at the Value column (not the Secret ID column)
6
Click the copy icon in the Value column RIGHT NOW before doing anything else
7
Paste it into Notepad immediately, then into the tool
CRITICAL: Do NOT copy the "Secret ID" — you need the Value. Once you navigate away, the Value becomes hidden forever. If you miss it, delete the secret and create a brand new one.
What it looks like (yours will be different)
abc~defGHIjklmNOpqrSTuvwxYZ1234567890
12

API Permissions

Section 03 — Must be done by a Global Admin

Grant API Permissions to the App Registration
Required
Your App Registration exists but can't access anything yet. You need to grant it permission to each Microsoft service — like giving your "robot employee" a security badge for specific rooms.
1
On your App Registration, click API permissions in the left menu
2
Click + Add a permission → SharePoint → Application permissions → Sites.FullControl.All → Add
3
Add again → Dynamics CRM → Application permissions → user_impersonation → Add
4
Add again → Microsoft Graph → Application permissions → Sites.ReadWrite.All → Add
5
Add again → Power BI Service → Application permissions → Tenant.Read.All → Add
6
Click the big button: "Grant admin consent for [your company]" → click Yes
7
The status column should now show green checkmarks ✓ for all permissions
The "Grant admin consent" button requires a Global Admin. If you can't click it, ask your IT administrator to do steps 6–7. Without admin consent the pipeline will fail with "401 Unauthorized" errors.
13

SharePoint List Names

Section 04 — SharePoint Lists

List Names (up to 10)
Required
Tell the tool which SharePoint lists to migrate. Type each list name into its own field. Names must be spelled exactly right — including capital letters — or the migration will fail.
1
Go to your production SharePoint site
2
Click on one of your lists to open it
3
Click the gear icon ⚙List settings
4
Under List Information at the top — copy the exact name shown there
5
Paste it into List 1 in the tool. Repeat for each list.
Example list names
Projects Tasks Candidate Requests Interview Tracking Equipment Requests
Case sensitive: "projects" and "Projects" are different to SharePoint. Always check List Settings — don't guess the capitalisation.
14

Service Connections

Section 05 — Azure DevOps

What is a Service Connection?

A Service Connection is a saved credential inside Azure DevOps that lets your pipeline connect to Power Platform environments. You need one for Production and one for Development. Think of them as saved "logins" your pipeline uses automatically.

Find existing service connection names
Required
1
Go to dev.azure.com and open your project
2
Click Project Settings in the bottom-left corner (gear icon)
3
Click Service connections under the Pipelines section
4
Find the Production connection and copy its exact name → paste into Prod Service Connection Name
5
Same for Dev connection → paste into Dev Service Connection Name
Example names
Prod-PowerPlatform-SC Dev-PowerPlatform-SC
Don't have service connections yet? In Service connections → New → Power Platform → enter your environment URL, Tenant ID, Client ID, and Client Secret from the steps above → name it and save.
15

Pipeline Name

Section 05 — Azure DevOps

Pipeline Name
Required
A label you make up for this pipeline. It shows up in your Azure DevOps Pipelines list. Just make it descriptive so you know what it does at a glance.
Good examples
Migration-Prod-to-Dev HiringPortal-Prod-Dev-Migration ContosoOps-Migration-Pipeline
Convention: Use AppName-Source-to-Target so multiple pipelines stay easy to tell apart.

Generate & Deploy

Final step — get your pipeline file and run the migration

What to do after filling all fields
Final step
1
Once all fields are filled (progress bar at top should be full) — click ⚡ Generate Config
2
The tool generates a complete azure-pipelines.yml — click Copy
3
Go to Azure DevOps → your repository → create a new file called azure-pipelines.yml in the root → paste the content
4
Go to PipelinesNew pipeline → choose your repo → Azure DevOps finds the YAML automatically
5
Before running: go to Library+ Variable group → add ClientId and ClientSecret as secret variables → link this group to your pipeline
6
Click Run pipeline — green checkmarks = success, red X = click the step to see the error
After the migration: Go to your dev Power Platform environment and check the solution imported. Then update connection references in each Power Automate flow — they'll still point to production until you update them manually.
Flows come in disabled: Power Automate flows are always imported disabled. After migration, go to dev environment → Solutions → your solution → Cloud flows → turn each one on after updating its connections.

Full Checklist

Click each item to mark it done

I can log into portal.azure.com, make.powerapps.com, and dev.azure.com
Typed an App / Project Name (no spaces)
Selected Source Environment (usually production)
Selected Target Environment (usually development)
Copied Production SharePoint site URL (ends at site name)
Copied Dev SharePoint site URL
Copied Production Power Platform Instance URL from Session details
Copied Dev Power Platform Instance URL
Found Solution Name (the one without spaces, from the Name column)
Created App Registration in Azure Portal
Copied Tenant ID from App Registration Overview
Copied Client ID (Application ID) from App Registration Overview
Generated Client Secret and copied the Value immediately
Global Admin granted admin consent for all API permissions
Entered all SharePoint list names (exact spelling from List Settings)
Have Prod and Dev service connections in Azure DevOps — names copied
Typed a Pipeline Name
Clicked Generate and copied the YAML
Added ClientId and ClientSecret as secret variables in Azure DevOps Library
Pipeline ran successfully — all steps green
Updated connection references in dev flows after migration
Re-enabled flows in the dev environment