Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Authoritative sites help administrators identify official, organization-managed SharePoint sources. When you mark a site as authoritative, Copilot Search experiences recognize its content as trusted.
For users, this recognition improves confidence in search results. Visual signals, such as the From your organization label, make trusted items easier to identify.
Important
In the current release, configure authoritative sites through PowerShell and CSOM APIs. The configuration supports site-level designation but doesn't support personal sites.
Prerequisites
See Prerequisites for SharePoint Advanced Management.
Why use authoritative sites
Use authoritative sites to:
- Improve trust in Copilot Search by promoting verified organizational sources.
- Help users quickly identify official content.
- Reduce time spent validating whether content is reliable.
- Maintain centralized admin control over authoritative source designation.
Configure authoritative sites with SharePoint Online Management Shell
Use SharePoint Online Management Shell when you want a straightforward admin workflow.
- Install and import the module.
- Connect to your SharePoint admin center.
- Mark the site as authoritative.
Install-Module -Name Microsoft.Online.SharePoint.PowerShell -Force
Import-Module -Name Microsoft.Online.SharePoint.PowerShell
Connect-SPOService -Url "https://<tenant>-admin.sharepoint.com"
Set-SPOSite -Identity "https://<tenant>.sharepoint.com/sites/<siteName>" -IsAuthoritative $true
Configure authoritative sites with CSOM (advanced)
Use CSOM when you need automation or bulk operations.
Note
CSOM version 16.1.26914.12004 or later is required.
Step 1: Install PnP PowerShell
Install-Module PnP.PowerShell -Scope CurrentUser -Force
Step 2: Register a Microsoft Entra ID app
Register an app for interactive authentication and copy the client ID from the output.
$tenant = "<TenantName>.onmicrosoft.com"
Register-PnPEntraIDAppForInteractiveLogin -ApplicationName "PnP Interactive (SPO Admin)" -Tenant $tenant -SharePointDelegatePermissions "AllSites.FullControl" -SharePointApplicationPermissions "Sites.FullControl.All" -GraphDelegatePermissions "Sites.FullControl.All" -GraphApplicationPermissions "Sites.FullControl.All" -Interactive
$clientId = "<FROM ABOVE OUTPUT>"
Step 3: Install SharePoint Online CSOM
Install-Package Microsoft.SharePointOnline.CSOM -Source nuget.org -Scope CurrentUser
Step 4: Load CSOM assemblies
$dllPath = "C:\Users\<USER_NAME>\AppData\Local\PackageManagement\NuGet\Packages\Microsoft.SharePointOnline.CSOM.<VERSION>\lib\netstandard2.0"
Add-Type -Path "$dllPath\Microsoft.SharePoint.Client.dll"
Add-Type -Path "$dllPath\Microsoft.SharePoint.Client.Runtime.dll"
Add-Type -Path "$dllPath\Microsoft.Online.SharePoint.Client.Tenant.dll"
Step 5: Connect to SharePoint Online
$tenantDomain = "<TenantName>.onmicrosoft.com"
Connect-PnPOnline -Url "https://<TenantName>-admin.sharepoint.com" -ClientId $clientId -Tenant $tenantDomain -Interactive
Step 6: Initialize tenant object and verify API availability
$ctx = Get-PnPContext
$tenant = New-Object Microsoft.Online.SharePoint.TenantAdministration.Tenant($ctx)
$ctx.ExecuteQuery()
$tenant.GetType().GetMethod("GetAuthoritativeResources")
CSOM operations
Get authoritative sites
$authResources = $tenant.GetAuthoritativeResources()
$ctx.ExecuteQuery()
Mark a site as authoritative
$siteId = [Guid]"<SiteId>"
$result = $tenant.SetResourceAsAuthoritative($siteId)
$ctx.ExecuteQuery()
$result.Value
Remove a site from authoritative sites
$siteId = [Guid]"<SiteId>"
$result = $tenant.RemoveResourceAsAuthoritative($siteId)
$ctx.ExecuteQuery()
If the site is removed successfully, the response is empty. If the operation fails, PowerShell returns an exception.
Bulk mark sites as authoritative
[System.Guid[]]$siteIds = @([Guid]"<SiteId1>", [Guid]"<SiteId2>", [Guid]"<SiteId3>")
$results = $tenant.BulkSetResourceAsAuthoritative($siteIds)
$ctx.ExecuteQuery()
$results
Bulk remove authoritative sites
[System.Guid[]]$siteIds = @([Guid]"<SiteId1>", [Guid]"<SiteId2>", [Guid]"<SiteId3>")
$results = $tenant.BulkRemoveResourceAsAuthoritative($siteIds)
$ctx.Load($results)
$ctx.ExecuteQuery()
$results
Lifecycle and maintenance
Maintain authoritative sites as a living set of trusted sources:
- Review the list regularly and remove outdated or no-longer-official sites.
- Validate behavior after site deletion or restore events.
- Plan for propagation time after updates.
Limitations
- You can mark up to 100 sites as authoritative.
- Changes can take up to 72 hours to appear in supported experiences.
- Designation is currently site-level only.
- Multi-geo tenants manage authoritative site data per geo.
- Personal sites can't be marked as authoritative.
Troubleshooting
If changes don't appear as expected, check the following items:
- Licensing: A Microsoft 365 Copilot license is required. (See Prerequisites for SharePoint Advanced Management.)
- Feature availability: Make sure the feature is enabled in your tenant.
- Site eligibility: Make sure the URL is valid and references a supported SharePoint site.
- Timing: Allow enough time for propagation (up to 72 hours).