Sharepoint Setup Guide
Purpose
This document outlines the standardized procedure for integrating SharePoint with the Mizo platform. It covers setting up the necessary app registration and configuring permissions to enable secure and restricted access to your SharePoint sites.
Section 1 – Setting up the base configurations in Mizo
Step 1: Configure Integration in Mizo
- Log into the Mizo console.
- In the left-hand menu, go to Integrations.
- Select SharePoint from the list.
Step 2: Register the App in Microsoft Admin Center
- Log into the Microsoft Admin Center using an administrator account.
- Navigate to the App Registration page:
- Go to Show All > All Admin Centers > Microsoft Entra > Apps.
- Click + New Registration and fill in the following:
- Name:
Mizo SharePoint Integration
- Name:
- Copy the Tenant ID and Client ID.
- Add a Client Secret:
- Go to Certificates & Secrets.
- Click + New Client Secret.
- Copy the Secret Value immediately (it will only be shown once).
Step 3: Assign API Permissions
- Go to API Permissions in the app registration.
- Click + Add a permission > Microsoft Graph > Application permissions.
- Search for
Sites.ReadWrite.All,Sites.Selectedand add them. - Click Grant admin consent to approve the permissions.
Step 4: Save API Configuration in Mizo
- Go back to the Mizo console.
- Enter the Tenant ID, Client ID, and Client Secret obtained from Step 2.
- Click Save to validate the API connection.
Section 2 – Site Configuration
Step 1: Setup Microsoft.Graph for PowerShell
- Install Microsoft.Graph for PowerShell
- Open PowerShell as an Administrator.
- Set the execution policy to allow remote scripts:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser- Install the Microsoft.Graph module:
Install-Module Microsoft.Graph.Authentication -Scope CurrentUser -Force Install-Module Microsoft.Graph -Scope CurrentUser -Repository PSGallery -Force 5. This may take a while to complete. 6. Connect to Microsoft Graph with the required permissions:
Connect-MgGraph -Scopes "Sites.FullControl.All"Step 2: Assign Site Permissions
INFO
As of August 2025, Microsoft EntraID admin console does not allow to restrict site access to a specific SharePoint site through the administrative console. The script below allows to do this specific operation through PowerShell
For each SharePoint site you want to connect to Mizo, run the following script:
Replace variables in the following PowerShell script ($siteUrl, $targetAppId, $targetAppDisplayName). a. $siteUrl : The fully qualified URL of your SharePoint site, including the directory (
/sites/{siteName}) b. $targetAppId : The appId of the app created in Section 1, Step 2 c. $targetAppDisplayName : Use Mizo SharePoint IntegrationRun the following script to assign site permissions:
Import-Module Microsoft.Graph.Authentication; `
Import-Module Microsoft.Graph.Sites; `
$siteUrl = "https://yourtenant.sharepoint.com/sites/YourSite"; `
$targetAppId = "Mizo App Client ID"; `
$targetAppDisplayName = "Mizo SharePoint Integration"; `
$hostname = ([System.Uri]$siteUrl).Host; `
$sitePath = ([System.Uri]$siteUrl).AbsolutePath; `
$siteIdentifier = "$($hostname.Split('.')[0]).sharepoint.com:$sitePath"; `
try { `
$site = Get-MgSite -SiteId $siteIdentifier; `
Write-Host "Site ID: $($site.Id.Split(',')[1])"; `
} `
catch { `
Write-Error "Error getting site: $_"; `
exit `
}; `
$permissionBody = @{ `
roles = @("write"); `
grantedToIdentities = @( `
@{ `
application = @{ `
id = $targetAppId; `
displayName = $targetAppDisplayName `
} `
} `
) `
}; `
try { `
$permission = New-MgSitePermission -SiteId $site.Id -BodyParameter $permissionBody; `
Write-Host "Permission granted successfully!"; `
Write-Host "Permission ID: $($permission.Id)"; `
Write-Host "Roles: $($permission.Roles -join ', ')" `
} `
catch { `
Write-Error "Error granting permissions: $_"; `
Write-Host "Error details: $($_.Exception.Message)" `
}; `
Disconnect-MgGraph- Save the Site ID displayed in the output for use in the next step.
Section 3 – Adding Sites in Mizo
Step 1: Add SharePoint Sites
- In the Mizo console, navigate to the SharePoint integration page.
- In the SharePoint Sites section, click Add Site.
- Enter the Site ID obtained from Section 2, Step 2. You can also search by site name
- Click Add to register the site.
- Repeat this process for each SharePoint site you want to connect.
Step 2: Configure Site Sync Settings
For each added site, configure the synchronization settings:
- Click on the site card to expand the Configure Sync section.
- Knowledge Base Configuration:
- Select a Document Library from the dropdown (e.g., “Documents”, “Shared Documents”).
- Select a Folder Path to specify which folder contains your procedures or documentation.
- Assets Configuration:
- Select a Document Library for assets storage.
- Select a Folder Path to specify which folder contains your assets.
- Click Save to apply the configuration.
Step 3: Set KB Creation Target (Optional)
If you have multiple sites configured and want to specify which site should be used for creating new knowledge base articles:
- Find the site you want to designate as the KB creation target.
- Click the star icon next to the site name.
- The site will be marked with a gold star badge indicating it is the KB creation target.
Troubleshooting
Site Not Found
If you receive a “Site not found” error when adding a site:
- Verify the Site ID is correct (it should be a GUID format).
- Ensure the PowerShell script completed successfully and permissions were granted.
- Confirm the app registration has the required API permissions with admin consent.
Unable to Load Document Libraries
If document libraries don’t appear in the dropdown:
- Check that the API connection is successful (green status indicator).
- Verify the site permissions were granted correctly using the PowerShell script.
- Ensure Sites.ReadWrite.All permission has been granted admin consent.
This updated guide reflects the new multi-site workflow where:
- API configuration is saved first (Section 1)
- Site permissions are granted via PowerShell for each site (Section 2)
- Sites are added and configured individually in Mizo with drive/folder selection and a save button (Section 3)
- The KB creation target can be set for one site at a time