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.
Applies to: ✓ All custom models | ✓ All prebuilt models
Important
The Microsoft Syntex PowerShell cmdlets and all other PnP components are open-source tools backed by an active community providing support for them. There's no service-level agreement (SLA) for open-source tool support from official Microsoft support channels.
Microsoft Syntex models typically are deployed to document libraries across your tenant. This action can be done by using the content center site, but it can also be done using PnP PowerShell as explained in this article.
Listing the available models in a content center
To get an overview of the models added to the current Microsoft Syntex content center site, use the Get-PnPSyntexModel cmdlet:
Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Get-PnPSyntexModel
Apply a model to a library
To apply a model to a library, use the Publish-PnPSyntexModel cmdlet:
Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Publish-PnPSyntexModel -Model "Contract Notice" -ListWebUrl "https://contoso.sharepoint.com/sites/finance" -List "Documents"
Understanding where a model is used
Once you deploy a model to many libraries, you might want to review the list of libraries using your model. This action can be done using the Get-PnPSyntexModelPublication cmdlet:
Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Get-PnPSyntexModelPublication -Identity "Contract Notice"
Removing a model from a library
Removing a model from a library follows the same pattern as applying and can be done using the Unpublish-PnPSyntexModel cmdlet either interactively or as batch of multiple actions.
Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourSite"
Unpublish-PnPSyntexModel -Model "Invoice model" -ListWebUrl "https://contoso.sharepoint.com/sites/finance" -List "Documents"
Apply models in bulk
If you want to publish multiple models to multiple libraries, create an input CSV file listing the models and the target locations:
ModelName,TargetSiteUrl,TargetWebServerRelativeUrl,TargetLibraryServerRelativeUrl
Contract Notice,https://contoso.sharepoint.com/sites/Site1,/sites/Site1,/sites/site1/shared%20documents
Contract Notice,https://contoso.sharepoint.com/sites/Site1,/sites/Site1,/sites/site1/other
Trade Confirmation,https://contoso.sharepoint.com/sites/Site2,/sites/Site2,/sites/site2/shared%20documents
This CSV file can then be used as an input into a script that publishes the listed models to the appropriate libraries. In the following example, batching is used to increase the efficiency of the requests.
$contentCenterURL = "https://contoso.sharepoint.com/sites/yourSite"
$targetsCSV = "./Publish-SyntexModelBulk.csv"
Connect-PnPOnline -url $contentCenterURL
$targetLibraries = Import-Csv -Path $targetsCSV
$batch = New-PnPBatch
foreach ($target in $targetLibraries) {
Publish-PnPSyntexModel -Model $target.ModelName -TargetSiteUrl $target.TargetSiteUrl -TargetWebServerRelativeUrl $target.TargetWebServerRelativeUrl -TargetLibraryServerRelativeUrl $target.TargetLibraryServerRelativeUrl -Batch $batch
}
Invoke-PnPBatch -Batch $batch