Please do not commit changes to this file, it is maintained by the repo owner.
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- Added
-Waitand-Verboseoptional paramarers toNew-PnPUPABulkImportJob#1752 - Added
Add-PnPTeamsChannelUserwhich allows members and owners to be added to private channels in Teams #1735 - Added
Channelparameter toAdd-PnPTeamsUsercmdlet which if specified will allow owners and members to be added to private channels in a Teams Team. #1772 - Added the ability to retrieve site collection information by its Id using
Get-PnPTenantSite -Identity <id>#1766 - Added
ResourceBehaviorOptionsoption inNew-PnPMicrosoft365Groupcmdlet to setResourceBehaviorOptionswhile provisioning a Microsoft 365 Group. #1774 - Added
Add-PnPTeamsChannelUserwhich allows members and owners to be added to private channels in Teams #1735 - Added
ExcludeVisualPromotedResultsparameter toGet-PnPSearchConfigurationwhich excludes promoted results #1750 - Added
MediaTranscriptionparameter toSet-PnPTenantSiteandSet-PnPSitecmdlets which when enabled allows videos to have transcripts generated on demand or generated automatically in certain scenarios. - Added
-SensitivityLabelsparameter toNew-PnPTeamsTeamandNew-PnPMicrosoft365Groupcmdlets to apply sensitivity label to the Microsoft 365 Group and Team. - Added
-SensitivityLabelsparameter toSet-PnPMicrosoft365Groupcmdlets to apply sensitivity label to the Microsoft 365 Group and Team. - Added
MediaTranscriptionparameter toSet-PnPTenantSiteandSet-PnPSitecmdlets which when enabled allows videos to have transcripts generated on demand or generated automatically in certain scenarios - Added
Get-PnPTeamsChannelFilesFoldercmdlet to retrieve metadata for the location where files of a Teams channel are stored. #1799 - Added
Get-PnPVivaConnectionsDashboardACEto retrieve the Adaptive Card extensions from the Viva connections dashboard page. #1805 - Added
Add-PnPVivaConnectionsDashboardACEto add an Adaptive Card extension to the Viva connections dashboard page. #1805 - Added
Update-PnPVivaConnectionsDashboardACEto update an Adaptive Card extension in the Viva connections dashboard page. #1805 - Added
Remove-PnPVivaConnectionsDashboardACEto remove an Adaptive Card extension in the Viva connections dashboard page. #1805 - Added
Acceptparameter toInvoke-PnPSPRestMethodcmdlet which if specified will pass the Accept HTTP request header. #1795 - Added
Get-PnPFlowRuncmdlet to retrieve a specific run, or all runs from a specific Power Automate flow. #1819 - Added
Invoke-PnPGraphMethodcmdlet to invoke generic Microsoft Graph API Methods. #1820 - Added
TimeZoneparameter toNew-PnPSitecmdlet which allows setting of the site collection in the specified timezone. - Added
Stop-PnPFlowRuncmdlet to stop/cancel a specific Power Automate flow run. #1838 - Added
Remove-PnPTeamsChannelUsercmdlet to remove a user from a private channel. #1840 - Added
Get-PnPTeamsChannelMessageReplyto retrieve all replies or a specific reply of a message in a Teams channel #1885 - Added
-Identityparameter toGet-PnPTeamsChannelMessagecmdlet to retrieve a specific message #1887 - Added new
PnP.PowerShellimage which also gets published to Docker Hub. #1580 - Added capability to Debug the module in Visual Studio. #1880
- Added
Set-PnPTeamsChannelUsercmdlet to update the role of user in a private channel. #1865
- Changed
Sync-PnPSharePointUserProfilesFromAzureActiveDirectoryto map users based on their Ids instead which should resolve some issues around user identities reporting not to exist. You can use the new-IdTypeoption to switch it back toPrincipalNameif needed. #1752 - Changed
Get-PnPOrgAssetsLibraryto return a proper value of the organisation assets libraries. #1889 - Bumped .NET Framework version to 4.6.2 as the 4.6.1 is not supported anymore. #1856
- Changed
Add-PnPDataRowsToSiteTemplate, it will now export a datetime field value as UTC string. #1900
- Fixed
Get-PnPTenantSitecmdlet so that it will return data even if the template name is specified in a different case. #1773 - Fixed
Add-PnPDocumentSetcmdlet so that it will support Document Set Content Type Id specified at the web level. #1796 - Fixed
Get-PnPGroup,Get-PnPGroupPermissionsandSet-PnPGroupPermissionscmdlets by making them more consistent. They will also throw error if a group is not found. #1808 - Fixed
Get-PnPFileissue with every 3rd file download in PS 5. - Fixed
Add-PnPContentTypesFromContentTypeHub, ifSiteparameter is specified, it will be used now to sync content types from content type hub site. - Fixed
Get-PnPTeamsTeam, the cmdlet now also returns additional properties likeWebUrl, CreatedDateTime, InternalId#1825 - Fixed
Add/Set-PnPListItem, the cmdlet now works correctly with-Batchparameter for field types other than string. #1890 - Fixed
Get-PnPTeamsTeam, the cmdlet now also returns additional properties likeWebUrl, CreatedDateTime, InternalId. #1825 - Fixed
Set-PnPListPermission, it will now throw error if the list does not exist. #1891 - Fixed
Invoke-PnPSPRestMethodinvalid parsing for SharePoint number columns. #1877 - Fix issue with
Add/Set-PnPListItemnot throwing correct exception for invalid taxonomy values. #1870 - Fixed
Sync-PnPSharePointUserProfilesFromAzureActiveDirectorythrowing an "Object reference not set to an instance of an object" exception when providing an empty users collection or incorrect user mapping #1896
- Removed
Get-PnPAvailableClientSideComponents. UseGet-PnPPageComponent -Page -ListAvailableinstead. #1833
- Bart-Jan Dekker [bjdekker]
- Aleksandr Sapozhkov [shurick81]
- [spg-iwilson]
- Jago Pauwels [jagopauwels]
- [4ndri]
- Martin Lingstuyl [martinlingstuyl]
- James May [fowl2]
- Milan Holemans [milanholemans]
- Arleta Wanat [PowershellScripts]
- Koen Zomers [koenzomers]
- Mikael Svenson [wobba]
- Gautam Sheth [gautamdsheth]
- Added additional properties to the users returned by
Get-PnPMicrosoft365GroupMembersuch asuserType#1474 - Added
Update-PnPTeamsUsercmdlet to change the role of a user in an existing Teams team #1499 - Added
Get\New\Remove\Set-PnPMicrosoft365GroupSettingscmdlets to interact with Microsoft 365 Group settings. - Added
Get-PnPMicrosoft365GroupSettingTemplatescmdlet to retrieve system wide Microsoft 365 Group setting templates. - Added
Add\Remove\Invoke\Get-PnPListDesigncmdlets to add a list design, remove a list design and apply the list design. - Added
DisablePersonalListCreationparameter toSet-PnPTenantcmdlet to provide ability to disable personal lists creation #1545 - Added
DisabledModernListTemplateIdsandEnableModernListTemplateIdsparameters toSet-PnPTenantcmdlet to provide ability to disable or enable modern lists with specific Ids #1545 - Added
DisablePersonalListCreationandDisabledModernListTemplateIdsvalues to be displayed when usingGet-PnPTenantcmdlet #1545 - Added
Add\Remove\Set-PnPAdaptiveScopePropertycmdlets to add/update/remove a property bag value while dealing with the noscript toggling in one cmdlet #1556 - Added support to add multiple owners and members in
New-PnPTeamsTeamcmdlet #1241 - Added the ability to set the title of a new modern page in SharePoint Online using
Add-PnPPageto be different from its filename by using-Title - Added optional
-UseBetaparameter toGet-PnPAzureADUserto force it to use the Microsoft Graph beta endpoint. This can be necessary when i.e. using-Select "PreferredDataLocation"to query for users with a specific multi geo location as this property is only available through the beta endpoint. #1559 - Added
-Contentoption toAdd-PnPFilewhich allows creating a new file on SharePoint Online and directly providing its textual content, i.e. to upload a log file of the execution #1559 - Added
Get-PnPTeamsPrimaryChannelto get the primary Teams channel, general, of a Team #1572 - Added
IgnoreDefaultPropertiesparameter toGet-PnPAzureADUserto allow for the default properties not to be retrieved but instead just the ones you specify usingSelect#1575 - Added
Publish\Unpublish-PnPContentTypeto allow for content types to be published or unpublished on hub sites #1597 - Added
Get-PnPContentTypePublishingStatusto get te current publication state of a content type in the content type hub site #1597 - Added ability to pipe the output of
Get-PnPTenantDeletedSiteto eitherRestore-PnPTenantDeletedSiteorRemove-PnPTenantDeletedSite#1596 - Added
Rename-PnPTenantSiteto rename a SharePoint Online site URL #1606 - Added optional
-Waitoption toSync-PnPSharePointUserProfilesFromAzureActiveDirectoryto allow for the script to wait until the user profile sync has completed - Added optional
-Verboseoption toSync-PnPSharePointUserProfilesFromAzureActiveDirectoryto allow for seeing the progress of the synchronization process - Added
Copy-PnPTeamsTeamwhich allows an existing Teams team to be copied into a new Team #1624 - Added
Set-PnPMessageCenterAnnouncementAsReadwhich allows setting one or more message center announcements as read for the current user #1151 - Added
Set-PnPMessageCenterAnnouncementAsUnreadwhich allows setting one or more message center announcements as unread for the current user #1151 - Added
Set-PnPMessageCenterAnnouncementAsArchivedwhich allows setting one or more message center announcements as archived for the current user #1151 - Added
Set-PnPMessageCenterAnnouncementAsNotArchivedwhich allows setting one or more message center announcements as not archived for the current user #1151 - Added
Set-PnPMessageCenterAnnouncementAsFavoritewhich allows setting one or more message center announcements as favorite for the current user #1151 - Added
Set-PnPMessageCenterAnnouncementAsNotFavoritewhich allows setting one or more message center announcements as not favorite for the current user #1151 - Added
-AsMemoryStreamoption toGet-PnPFileto allow for downloading of a file from SharePoint Online in memory for further processing #1638 - Added
-Streamoption toRead-PnPSiteTemplateto allow for processing on a PnP Provisioning Template coming from memory #1638 - Added
New-PnPAzureADUserTemporaryAccessPasswhich allows creation of a Temporary Access Pass for a specific user in Azure Active Directory - Added
-Forceoption toSet-PnPTenantto allow skipping the confirmation question for certain other parameters likeSignInAccelerationDomain,EnableGuestSignInAcceleration,BccExternalSharingInvitations,OrphanedPersonalSitesRetentionPeriod,OneDriveForGuestsEnabled,AllowDownloadingNonWebViewableFiles. - Added
Get-PnPCompatibleHubContentTypeswhich allows the list of content types present in the content type hub site that can be added to the root web or a list on a target site to be returned #1678
- Improved
Add-PnPTeamsUsercmdlet. The cmdlet executes faster and we can now add users in batches of 200. #1548 - The
Move\Remove\Rename-PnPFoldercmdlets now support pipebinds. - Changed
Add-PnPDataRowsToSiteTemplate, it will return a warning if user(s) are not found during list item extraction. Earlier it used to throw error and stop extraction of list items. - Changed the return type of
Sync-PnPSharePointUserProfilesFromAzureActiveDirectoryto return our own entity instead of the one returned by CSOM #1559 - Changed running
Sync-PnPSharePointUserProfilesFromAzureActiveDirectorywith-WhatIfto also provide a return entity providing the path to where the JSON file has been uploaded to #1559 - Disabling telemetry collection now requires either setting the environment variable or creating the telemetry file (documentation) #1504
- Changed
Get-PnPAzureADUserto now return all the users in Azure Active Directory by default, instead of only the first 999, unless you specified-EndIndex:$null#1565 - Changed
Get-PnPTenantDeletedSite -Identityno longer returning an unknown exception when no site collection with the provided Url exists in the tenant recycle bin but instead returning no output to align with other cmdlets #1596 - Changed
Connect-PnPOnline -UseWebLoginto no longer suppress errors which should allow for certificate logins to be used #1706 - The cmdlet
New-PnPTeamsTeamno longer supports adding members or owners through their e-mail addresses, if they differ from their UPNs. The User Principal Names must be used instead #1241
- Fixed
Set-PnPSitenot working withDisableCompanyWideSharingLinksparameter. - Fixed
Get-PnPListPermissionsreturning wrong information in case of broken inheritance. - Fixed
Submit-PnPSearchQuery -Query "somequery"yielding an error when no results #1520 - Fixed
Set-PnPTenantSitenot setting SharingCapability property correctly. - Fixed
Get-PnPMicrosoft365Groupretrieving non-Unified groups when parameters are not specified. - Fixed
Get-PnPRecycleBinListItemnot retrieving second stage items if onlyRowLimitis specified. - Fixed
Add-PnPDataRowsToSiteTemplateissue with PnP templates when it contained multilingual references. - Fixed
Copy-PnPItemProxyis not recognized as the name of a cmdlet, function, script file, or operable program error with the cmdlet. - Fixed
Add-PnPMicrosoft365GroupMember,Remove-PnPMicrosoft365GroupMember,Add-PnPTeamsUserandRemove-PnPTeamsUsernot being able to handle guest accounts containing # characters #1523 - Fixed not being able to pipe
Get-PnPHubSitetoGet-PnPHubSiteChildto retrieve all site collections which are associated to any hub site #1571 - Fixed
Add-PnPFileToSiteTemplatewhen used alongsideGet-PnPFilewhere the FileStream tried to overwrite an already open filestream when a file was located in the same directory as the template file itself. - Fixed
Get-PnPMessageCenterAnnouncementreturning an error #1607 - Fixed
New-PnPTeamsTeamissue when adding Owners and Members. - Fixed running an admin cmdlet not always returning to the same context as before running the cmdlet #1611
- Fixed an issue where
Sync-PnPSharePointUserProfilesFromAzureActiveDirectorywould not correctly sync characters which are not part of the Western European encoding (iso-8859-1) - Fixed an issue where
Sync-PnPSharePointUserProfilesFromAzureActiveDirectorywould not correctly sync user profiles if a value contained a backslash () #1711
- Removed
Add-PnPClientSidePageSection, useAdd-PnPPageSectioninstead #1563 - Removed
Add-PnPClientSideWebPart, useAdd-PnPPageWebPartinstead #1563 - Removed
Add-PnPClientSideText, useAdd-PnPPageTextPartinstead #1563 - Removed
Get-PnPAADUser, useGet-PnPAzureADUserinstead #1568 - Removed
Get-PnPOffice365CurrentServiceStatus,Get-PnPOffice365HistoricalServiceStatus,Get-PnPOffice365ServiceMessageandGet-PnPOffice365Servicesas Microsoft has removed the underlying Office Management APIs. UseGet-PnPMessageCenterAnnouncent,Get-PnPServiceCurrentHealthandGet-PnPServiceHealthIssueinstead. #1608
- Michael Vasiloff [mikevasiloff]
- [svermaak]
- Russell Gove [russgove]
- Mike Park [mikeparkie]
- Jerker Vallbo [jerval53]
- Gaurav Mahajan [mahajangaurav]
- Dennis [expiscornovus]
- Jasey Waegebaert [Jwaegebaert]
- Swapnil Shrivastava [swapnil1993]
- Hugo Bernier [hugoabernier]
- brenle
- Johan Brännmar [brannmar]
- Lschockaert
- Leon Armston [LeonArmston]
- Reshmee Auckloo [reshmee011]
- Arleta Wanat [PowershellScripts]
- Brendon Lee [brenle]
- Guillaume Bordier [gbordier]
- [reusto]
- Reshmee Auckloo [reshmee011]
- Veronique Lengelle [veronicageek]
- Gautam Sheth [gautamdsheth]
- Koen Zomers [koenzomers]
- Added
Get-PnPTenantInstancewhich will return one or more tenant instances, depending if you have a multi-geo or single-geo (default) tenant. - Added optional
-ScheduledPublishDateparameter toAdd-PnPPageandSet-PnPPageto allow for scheduling a page to be published - Added
-RemoveScheduledPublishtoSet-PnPPageto allow for a page publish schedule to be removed - Added support for off peak SharePoint Syntex content classification and extraction for lists and folders via new
-OffPeakand-Folderparameters forRequest-PnPSyntexClassifyAndExtract - Added
Get\Set-PnPPlannerConfigurationto allow working with the Microsoft Planner tenant configuration - Added
Get\Set-PnPPlannerUserPolicyto allow setting Microsoft Planner user policies for specific users - Added
Get\Add\Remove-PnPPlannerRosterwhich allows a Microsoft Planner Roster to be created, retrieved or removed - Added
Get\Add\Remove-PnPPlannerRosterMemberto be able to read, add and remove members from a Microsft Planner Roster - Added
Get-PnPPlannerRosterPlanto be able to retrieve the Microsoft Planner plans inside a Microsoft Planner Roster or the ones belonging to a specific user - Added support for off peak SharePoint Syntex content classification and extraction for lists and folders via new
-OffPeakand-Folderparameters forRequest-PnPSyntexClassifyAndExtract - Added
Invoke-PnPSiteScriptwhich allows for a Site Script to be executed on a site without needing to have it registered in a site design or site script first - Added
Copy-PnPListwhich allows for a copy of a SharePoint list to be made in the same site or to another site. Copying along list item data is not yet possible but will follow in a later release. - Added
Get\Set-PnPWebHeaderto work with the Change the look > Header options of a site - Added
Enable-PnPPageSchedulingandDisable-PnPPageSchedulingto enable or disable page publishing scheduling on modern pages - Added ability to add multiple users to a Teams team in the
Add-PnPTeamsUsercmdlet - Added
-Credentials $credor-CurrentCredentialsto be allowed to be used in combination withConnect-PnPOnline -SPOManagementshell - Added
-InformationBarriersModein theSet-PnPTenantSitecmdlet which allows fine tuning of the information barriers mode per site collection - Added
-InformationBarriersSuspensionin theSet-PnPTenantcmdlet which allows information barriers to be enabled or disabled in a tenant - Added
-Recycleparameter toRemove-PnPPageto delete the page and send it to the recycle bin. This prevents permanently deleting the page and you can also restore it. - Added
-DemoteNewsArticleparameter to theSet-PnPPagecmdlet to demote an existing news post to a regular page. - Added
-Translateand-TranslationLanguageCodesparameters toSet-PnPPageandAdd-PnPPage. This enables multilingual page creation in sites. - Added
DisableSpacesActivationstate to be returned withGet-PnPTenant - Added
-AllowFilesWithKeepLabelToBeDeletedSPOand-AllowFilesWithKeepLabelToBeDeletedODBoptions toSet-PnPTenantwhich allows configuration of files on SharePoint Online and OneDrive for Business being blocked by a retention policy to be possible to be deleted anyway and then moved to the preservation hold library. The default for SharePoint Online for this will change as announced in Message Center announcement MC264360. This will allow reverting it. The current values can be retrieved usingGet-PnPTenant. - Added
DisableAddToOneDrivestate to be returned withGet-PnPTenantcmdlet. - Added
-DisableAddToOneDrivetoSet-PnPTenantcmdlet to enable/disable users from adding shortcuts to OneDrive. - Added optional
-Siteparameter toAdd-PnPContentTypesFromContenTypeHubwhich allows a specific site to be specified to add the content type hub content types to - Added
Set-PnPBuiltInSiteTemplateSettingsandGet-PnPBuiltInSiteTemplateSettingsto allow making the built in SharePoint Online site templates visible or hidden and getting their current settings - Added support for Channel sites (ID 69) to
Add-PnPSiteDesign,Set-PnPSiteDesignandAdd-PnPSiteDesignFromWeb - Added optional
-IsDefaultoption toGet-PnPPowerPlatformEnvironmentwhich allows just the default or non default environments to be returned. If not provided, all environments will be returned as was the case before this addition. - Added
ResourceBehaviorOptionsoption inNew-PnPTeamsTeamcmdlet to setResourceBehaviorOptionswhile provisioning a Team - Added alias on
Copy-PnPFileforCopy-PnPFolder. It could already be used to copy a folder, but to make this more clear, and as we already had aCopy/Move-PnPFolderas well, the same cmdlet is now also available under its alternative cmdlet name. - Added
IsFluidEnabledstate to be returned withGet-PnPTenantcmdlet. - Added
-IsFluidEnabledtoSet-PnPTenantcmdlet to enable/disable users from using Fluid components. - Added
Add\Get\Remove-PnPListItemCommentcmdlets to deal with list item comments. Using these cmdlets, you will now be able to add, retrieve and delete list item comments. #1462 - Added
-ResourceTypeNameand-ResourceUrlparameters toGet-PnPAccessTokento fetch access token of specified resource. #1451 - Added
-BookmarkStatusparameter toGet-PnPSearchConfigurationcmdlet to call REST endpoint to fetch promoted results defined via query rules and output them in Bookmark supported CSV format.
- Improved
Get-PnPFilecmdlet to handle large file downloads - Updated
Sync-PnPSharePointUserProfilesFromAzureActiveDirectoryto also allow results fromGet-PnPAzureADUser -Deltato be provided through-Users. - A clearer error message will now be returned when using
Add-PnPListItem -Listand specifying an invalid list name. - Response of
Add-PnPContentTypesFromContenTypeHubis now returned in the root of the response as well as under Value as it was previously for backwards compatibility. - Improved synopsis documentation for
Update-PnPUserTypecmdlet. - Improved documentation of
Add-PnPField, reflects the missing-AddToAllContentTypesparameter. - Improved documentation of
Get-PnPTaxonomyItemwith addition of new example and removing obsolete parameters. - Improved documentation of
Get-PnPTerm, fixed typos. - Improved
Add-PnPHubToHubAssociation. It will now throw error if both, source and destination, sites are not Hub sites, currently it fails silently without any information to the user. #1390
- Fixed
Get-PnPGroupMember -Usernot properly returning the specified user - Fixed group member retrieval through
Get-PnPAzureADGroupOwnerandGet-PnPAzureAdGroupMemberthrowing an exception when a security group has been placed in the Azure Active Directory group being queried - Fixed an issue where
Set-PnPPagewould not be able to find a page if you would start the-Identitywith a forward slash - Fixed an issue where
Set-PnPPagewould not return its parent Folder - Fixed
Set-PnPListItemnot working when usingLabelandValuesparameters together - Fixed documentation for
Get-PnPFlowandEnable-PnPFlowcmdlets - Fixed issue with
Add-PnPListFoldersToProvisioningTemplatenot working when having nested folder structure - Fixed documentation for
Get-PnPFlowandEnable-PnPFlowcmdlets - Fixed
Sync-PnPSharePointUserProfilesFromAzureActiveDirectorynot being able to deal with multi value properties on the Azure Active Directory side, such asBusinessPhones - Fixed
Add-PnPListItemissue with setting MultiChoice columns when using-Batchparameter - Fixed issue with
Remove-PnPListItemwhen trying to use it withBatchparameter - Fixed
Add-PnPDataRowsToSiteTemplatenot exporting TaxonomyFieldValues properly - Fixed
Add/Set-PnPListItemissue with managed metadata / taxonomy field value failing in a batched request. - Fixed
Set-PnPListItemissue with settingModifieddate value properly when using-Batchparameter. - Fixed
Get-PnPTeamsTeam -Identitythrowing an exception if the name of the team would contain special characters - Fixed
Get-PnPTermthrowing an exception when used in combination with-Includes#1384 - Fixed
Get-PnPDiagnosticsthrowing an unable to cast exception under some circumstances #1380 - Fixed
Get-PnPTeamsTabissue with missing TeamsApp object values. It will now populate TeamsApp object with Id, DisplayName, ExternalId and DistributionMethod properties if available. #1459
- Removed
Add-PnPClientSidePageas that was marked deprecated. UseAdd-PnPPageinstead. - Removed
Get-PnPSubWebsas that was marked deprecated a year ago. UseGet-PnPSubWebinstead. #1394
- Mikael Svenson [wobba]
- Koen Zomers [koenzomers]
- Bert Jansen [jansenbe]
- Gautam Sheth [gautamdsheth]
- [reusto]
- Asad Refai [asadrefai]
- Daniel Huber [daniel0611]
- Bart-Jan Dekker [bjdekker]
- Giacomo Pozzoni [jackpoz]
- Chris Kent [thechriskent]
- Filip Bosmans [FilipBosmans]
- [zylantha]
- Justin [pagejustin]
- Collin Argo [SCollinA]
- Leon Armston [LeonArmston]
- Lars Höög [h00g]
- [kachihro]
- [Andy-Dawson]
- David Aeschlimann [TashunkoWitko]
- [outorted]
- [dkardokas]
- Asad Refai [asadrefai]
- Added flexibility to mix and pipe
Add\Get\Remove-PnPListItemwithGet-PnPList - Added ability to remove all list items from a list using
Remove-PnPListItem -List <listname>and not providing a list item identifier. - Added
Get-PnPMessageCenterAnnouncent,Get-PnPServiceCurrentHealthandGet-PnPServiceHealthIssuecmdlets which pull their data out of the Microsoft Graph API and are replacing the formerGet-PnPOffice365CurrentServiceStatus,Get-PnPOffice365HistoricalServiceStatusandGet-PnPoffice365ServiceMessagecmdlets which pull their data from the Office Health and Communications API which is to be deprecated on December 17, 2021. If you're using any of these last three cmdlets, please rewrite your functionality to start using one of the first three cmdlets before this date. - Added option which allows new SharePoint 2013 Workflow creation to be disabled tenant wide by using
Set-PnPTenant -StopNew2013Workflowsand requesting its current setting usingGet-PnPTenant | Select StopNew2013Workflows - Added lots of extra information getting returned when using
Get-PnPFlow. - Added option which allows the Explorer View for Microsoft Edge to be enabled tenant wide by using
Set-PnPTenant -ViewInFileExplorerEnabledand requesting its current setting usingGet-PnPTenant | Select ViewInFileExplorerEnabled. It can be that this feature is not enabled on your tenant yet, in which case it will return an error. Try it again later in that case. - Added lots of extra information getting returned when using
Get-PnPPowerPlatformEnvironment - Added the option to use
-VerbosewithExport-PnPFlowso it wil show details on why an export failed when it is not possible to export the flow. - Added option to add/list/remove event receivers from the site scope using
Add-PnPEventReceiver -Scope <Site/Web>,Get-PnPEventReceiver -Scope <All/Site/Web>andRemove-PnPEventReceiver -Scope <All/Site/Web> - Added
-Urlparameter toNew-PnPUPABulkImportJobwhich allows providing a URL to an existing SharePoint User Profile import mapping instruction file stored on SharePoint Online - Added
Add-PnPSiteDesignFromWebwhich combinesGet-PnPSiteScriptFromWeb,Add-PnPSiteScriptandAdd-PnPSiteDesigninto one cmdlet to allow for a specific site to directly be added as a site design to allow other sites to be configured similarly - Added
Update-PnPSiteDesignFromWebwhich combinesGet-PnPSiteScriptFromWebandSet-PnPSiteScriptinto one cmdlet to allow for a specific site design to directly be updated based on an existing site which can function as a template - Added
Sync-PnPSharePointUserProfilesFromAzureActiveDirectorycmdlet which allows direct synchronization of user profile properties of choice between user profiles in Azure Active Directory and their SharePoint Online User Profile Service user profile equivallents
- Renamed
Get-PnPFlowEnvironmenttoGet-PnPPowerAutomateEnvironment - Changed
Get-PnPSiteScriptFromWebto get a site script of the currently connected to site if-Urlis omitted. - Improved
Find-PnPFileerror message Get-PnPFileVersioncmdlet documentation improved with additional example.Add-PnPNavigationNodecmdlet documentation improved with additional example feature which shows how to add a navigation node as a label.- Changed
Get-PnPSiteDesignandInvoke-PnPSiteDesignto when providing a name through-Identityto be able to work with all site designs having that same name instead of just the first one - Changed
Set-PnPListItemPermissionto support piping in a roledefinition for-AddRoleand-RemoveRole - Changed that
Get-PnPSiteScript -Identitynow also works with the site script name instead of just the site script Id - Changed that
Get-PnPUnifiedAuditLogreturns the error being returned by the Office Management API service, in case something goes wrong #1631
- Fixed
Get-PnPChangeLog -Nightlynot returning anything - Fixed issue with
Get-PnPUser -Identity xignoring additional requested attributes using-Includes - Fixed issue with
Set-PnPDefaultColumnValues -List "Documents" -Folder "Földer" -Field "Text" -Value "123"not working when having a folder name with special characters in it. - Fixed
Get-PnPExceptionthrowing an exception and not showing the last exception if the last cmdlet throwing an exception used-ErrorAction Stop - Fixed
Get-PnPException -Allthrowing an exception. - Fixed an issue with
Set-PnPSite -Identity <url> -Owner <upn>not working if the URL would be a OneDrive for Business site. - Fixed an issue with
Get-PnPSiteScriptFromWebrequiring an Include parameter next to providing lists and fixed specifying lists through List\ListName not working. - Fixed issue with 'Remove-PnPSiteDesign -Identity` not accepting a site design name, only a GUID.
- Fixed unable to piping the output of
Get-PnPRoleDefinitionto i.e. filter by RoleTypeKind. - Fixed an issue with several PnP PowerShell cmdlets such as
Get-PnPTeamsUserwhere not all results would be returned - Fixed issue with
Remove-PnPSiteDesign -Identitynot accepting a site design name, only a GUID. - Fixed issue with
Get-PnPUPABulkImportStatuswhere it did not allow you to pipe its output to i.e. get the most recent one usingSelect -Latest 1or the ones that failed using? State -ne "Succeeded" - Fixed an issue where running
Get-PnPSiteDesign -Identitypassing in an identifier that did not exist would return an exception #1622
- Removed
ConvertTo-PnPClientSidePagecmdlet as it has been replaced byConvertTo-PnPPagethis option is not enabled yet on your tenant in which case trying to set it results in toSet-PnPTenant: The requested operation is part of an experimental feature that is not supported in the current environment.. In that case try again later. - Removed
Add-PnPUserToGroupas it has been replaced byAdd-PnPGroupMember - Removed
Get-PnPGroupMemberscmdlet alias and related warning. The cmdletGet-PnPGroupMember(singular) is available. - Removed
Remove-PnPUserFromGroupcmdlet alias and related warning. The cmdletRemove-PnPGroupMemberis available. - Removed
Initialize-PnPPowerShellAuthenticationcmdlet alias and related warning. The cmdletRegister-PnPAzureADAppis the replacement.
- Koen Zomers [koenzomers]
- Yuriy Samorodov [YuriySamorodov]
- Asad Refai [asadrefai]
- James Eccles [jameseccles]
- Giacomo Pozzoni [jackpoz]
- Todd Klindt [ToddKlindt]
- Rolands Strakis [wonderplayer]
- Bhishma Bhandari [bhishma]
- [reusto]
- [4ndri]
- [WimVandierendonck]
- Updated CSOM release
- Fixes issue with Get-PnPTenantSite
- Get-PnPPage now can load pages living in a folder by specifying "folder/page.aspx"
- Added
-DisableBackToClassicoption to Set-PnPTenant
- [thomassmart]
- Bert Jansen [jansenbe]
- Added
Request-PnPSyntexClassifyAndExtractcmdlet to request classification and extraction of a file or all files in a list - Added
Get-PnPSyntexModelcmdlet to list the defined SharePoint Syntex models in a SharePoint Syntex content center site - Added
Publish-PnPSyntexModelcmdlet to publish a SharePoint Syntex model to a library - Added
Unpublish-PnPSyntexModelcmdlet to unpublish a SharePoint Syntex model from a library - Added
Get-PnPSyntexModelPublicationcmdlet to list the libraries to which a SharePoint Syntex model was published
- Bert Jansen [jansenbe]
- Koen Zomers [koenzomers]
- Gautam Sheth [gautamdsheth]
- Veronique Lengelle [veronicageek]
- Added
-IncludeOwnerstoGet-PnPMicrosoft365Group. - Added
-AssignedTotoAdd-PnPPlannerTaskandSet-PnPPlannerTaskallowing you to assign users to a task. - Added
Get-PnPAzureADApp,Get-PnPAzureADAppPermissionandRemove-PnPAzureADAppto manage Azure AD apps. - Added All Graph permissions and all SharePoint permissions for selection to
Register-PnPAzureADApp. - Added
-Templateparameter to New-PnPTeamsTeam to create teams with EDU templates (your tenant needs an EDU license) - Added fixes for authentication to GCC, GCC High and GCC DoD environments using certificate or interactive login.
- Added
Grant-PnPAzureADAppSitePermission,Get-PnPAzureADAppSitePermission,Set-PnPAzureADAppSitePermissionandRevoke-PnPAzureADAppSitePermission - Added
-SkipHiddenWebPartsparameter to theConvertTo-PnPPagecmdlet that allows to skip hidden webparts during page transformation
- Improved batching speed when creating or updating multiple items that set similar values for taxonomy fields.
- Changed
Register-PnPAzureADAppregistration to by default turn on the ability to authenticate with credentials for a newly created Azure App registration (allowPublicClient: true). - Refactored
Register-PnPAzureADApp. Marked-Scopesas obsolete and introduced-GraphApplicationPermissions,-GraphDelegatePermissions,-SharePointApplicationPermissionsand-SharePointDelegatePermissions. Added additional permission scopes. - Re-enabled Console Logging with Set-PnPTraceLog -On
- Fixed warning showing to use -Interactive instead of -UseWebLogin to show correct url.
- Documentation updates
- Mahesh Chintha [chinthamahesh]
- John Bontjer [JohnBontjer]
- Todd Klindt [ToddKlindt]
- Koen Zomers [koenzomers]
- Veronique Lengelle [veronicageek]
- Mike Jensen [michael-jensen]
- Leon Armston [leonarmston]
- Ganesh Sanap [ganesh-sanap]
- vin-ol [vin-ol]
- Bert Jansen [jansenbe]
- Added
-HideTitleInHeaderparameter toSet-PnPWebto hide or show the title in the header. Use-HideTitleInHeaderto hide it and-HideTitleInHeader:$falseto show it. - Added
-ShowContentUrlparameter toRegister-PnPManagementShellAccessretrieve the url to consent to the PnP Management Shell application by an administrator. - Added
-IsFavoriteByDefaultparameter on Set-PnPTeamsChannel and Add-PnPTeamsChannel - Added
-GroupIdDefinedboolean parameter to Get-PnPTenantSite to allow filtering on sites which belong to a Microsoft 365 Group - Added
-Interactivelogin option toConnect-PnPOnlinewhich is similar to-UseWebLoginbut without the limitations of the latter. The-UseWebLoginis using cookie based authentication towards SharePoint and cannot access Graph tokens. Using-Interactivewe use Azure AD Authentication and as a result we are able to acquire Graph tokens.
- Fixed certificate clean up issue on Windows platform when using
Connect-PnPOnlinewith a certificate. - Fixed issues with
Register-PnPAzureADAppwhen using the various auth options (-DeviceLogin / -Interactive) - Renamed the
-PnPManagementShelloption to-DeviceLoginonConnect-PnPOnline.-PnPManagementShellis still available as an alias. - Added
-ClientIdoption to-DeviceLoginallowing device code authentication with custom app registrations. - Changed
-Urlparameter on Get-PnPTenantSite and Set-PnPTenantSite to-Identity. Made-Urlavailable as an alias. - Updated
Set-PnPTenantSiteto support same parameters asSet-SPOSite - Updated
Get-PnPTenantSiteto return same properties asGet-SPOSite - Fixed issue where
-InteractiveonConnect-PnPOnlinewould prompt for credentials when connecting to new site within same tenant. Added -ForceLogin parameter to force - Get-PnPUser and any other cmdlet that takes a UserPipeBind parameter as input now allows users to be specified by name besides loginname or id.
- Fixed issue where retrieving a single site with Get-PnPTenantSite vs retrieving all sites showed different properties.
- Invoke-PnPSPRestMethod now returns usable objects
- Updated
Set-PnPListItemto have anUpdateTypeparameter. ObsoletedSystemUpdate. Also updated the backend logic so can now also specifyUpdateOverwriteVersionto update the editor, author, modified and created fields. Register-PnPAzureADAppnow outputs the base64 encoded version of the certificate which can be used withConnect-PnPOnline -ClientId -CertificateBase64Encoded- Fixed issue with moving and copying files to subfolder, Issue #165.
- fixed issue where Get-PnPTenantSite was not returning all properties correct, Issue #151
- Added
-Interactivelogin option to Register-PnPManagementApp which allows for an interactive authentication flow not using device login for environments that require Multi-Factor Authentication. - Updated all Microsoft365Group cmdlets to only load the SiteUrl of the underlying Microsoft 365 Group where required. This means that
Get-PnPMicrosoft365Group -Identitywill not by default load the site url. Specify-IncludeSiteUrlto include it.
- Mike Jensen [michael-jensen]
- Koen Zomers [koenzomers]
- Gautam Sheth [gautamdsheth]
- Todd Klindt [ToddKlindt]
- Giacomo Pozzoni [jackpoz]
- Added
-NoWaitswitch toCopy-PnPFileandMove-PnPFile - Added
Receive-PnPCopyMoveJobStatuscmdlet which works in combination with the-NoWaitparameter onCopy-PnPFileandMove-PnPFile. See the documentation for usage.
- Fixed issue with
Invoke-PnPSPRestMethodto throw an non authorized exception in certain scenarios. - Fixed issue with using
-UseWebLoginand site names longer than the length of the managed path it resides in. - Fixed issue with tenant admin site detection on environment with vanity domains
- Fixed issues with
Copy-PnPFileandMove-PnPFile - Updated
Get-PnPTenantSiteto support-DisableSharingForNonOwnersStatus
- Added
-NoWaitswitch toCopy-PnPFileandMove-PnPFile - Added
Receive-PnPCopyMoveJobStatuscmdlet which works in combination with the-NoWaitparameter onCopy-PnPFileandMove-PnPFile. See the documentation for usage.
- Fixed issue with
Invoke-PnPSPRestMethodto throw an non authorized exception in certain scenarios. - Fixed issue with using
-UseWebLoginand site names longer than the length of the managed path it resides in.
- Fixed issue with tenant admin site detection on environment with vanity domains
- Fixed issues with
Copy-PnPFileandMove-PnPFile - Updated
Get-PnPTenantSiteto support-DisableSharingForNonOwnersStatus
First released version of PnP PowerShell
- Added
Get-PnPFlow,Get-PnPFlowEnvironment,Enable-PnPFlow,Disable-PnPFlow,Remove-PnPFlow,Export-PnPFlowcmdlets
- Documentation updates
- Yannick Reekmans [YannickRe]
- Reintroduced
-CertificateBase64EncodedonConnect-PnPOnline
- Reorganized Connect-PnPOnline and simplified/cleared up usage. See https://pnp.github.io/powershell/cmdlets/connect-pnponline.html and https://pnp.github.io/powershell/articles/connecting.html for more information.
- Reorganized internals with regards to access token handling.
- Fixed issue with
Set-PnPGroupPermissionsnot removing roles from list correctly.
- Leon Armston [leonarmston]
- Koen Zomers [koenzomers]
- Updated certificate handling for
Register-PnPAzureADAppandNew-PnPAzureCertificate - Updated
Register-PnPAzureAppto use popup windows on Microsoft Windows. Added the-NoPopupswitch to disable this behavior. - Updated
Invoke-PnPBatchto fully execute a batch by default if one of the requests in the large batch throws an exception. Specify the-StopOnExceptionswitch to immmediately stop after an exception occurs. The rest of the batch will be skipped where possible. See https://pnp.github.io/powershell/articles/batching for more information. - Documentation updates
- Leon Armston [leonarmston]
- Added -ClientSideHostProperties to
Set-PnPApplicationCustomizer - Documentation updates for Teams cmdlets
- Leon Armston [leonarmston]
- Added batching support to
Remove-PnPListItem
- Added initial batching support. See
New-PnPBatch,Invoke-PnPBatch,Add-PnPListItemandSet-PnPListItem - Updated documentation
- Deprecated the use of the
-Webcmdlet parameters due to API reasons. UseConnect-PnPOnline -Url [fullsubweburl]instead to connect to a subweb. - Updated
Get-PnPLabelto allow returning available compliance tags for a site - Updated several cmdlets to use the Code SDK behind the scenes
- Veronique Lengelle [veronicageek]
- Leon Armston [leonarmston]
- Added
Get-PnPListPermissionscmdlet.
- Fixed issue where using
Connect-PnPOnlinein a loop would through after several iterations an exception message from MSAL not being able to retrieve a token due to a looped request. We fixed this by trying to reuse the in-memory token cache in scenarios where non-interactive logins are being used. Connect-PnPOnline -Url [url] -PnPManagementShell -LaunchBrowserwill not try to attempt to close the popup window automatically anymore.Set-PnPLabelwill now check first if a label is available.- Documentation fixes
- Leon Armston [leonarmston]
- Bhishma Bhandari [bhishma]
- Renamed
Add-PnPUserToGrouptoAdd-PnPGroupMember. Alias for the old cmdlet name is available. - Renamed
Remove-PnPUserFromGrouptoRemove-PnPGroupMember. Alias for the old cmdlet name is available. - Renamed
Get-PnPGroupMemberstoGet-PnPGroupMember. Alias for the old cmdlet name is available.
- Fixed issue when using
Connect-PnPOnlineusing either-UseWebLoginor-SPOManagementShelland invoking a site template containing modern pages, or when trying to create or update modern pages using the PnP Cmdlets.
Register-PnPManagementShellAccesswill not automatically close the window after consent anymore.Connect-PnPOnline -UseWebLoginnow allows you to return the connection with-ReturnConnectionPR #71Remove-PnPTermGroupnow includes a-Forceparameter PR #70Get-PnPListItemnow can filter on both the GUID or the UniqueId value by specifying the -UniqueId parameter. PR #68
- Gautam Sheth [gautamdsheth]
- Added
-ReadSecurityand-WriteSecuritytoSet-PnPListcmdlet (0.3.15)
- Renamed
Add-PnPClientSidePagetoAdd-PnPPage(0.3.15) - Renamed
Add-PnPClientSidePageSectiontoAdd-PnPPageSection(0.3.15) - Renamed
Add-PnPClientSideTexttoAdd-PnPPageTextPart(0.3.15) - Renamed
Add-PnPClientSideWebtoAdd-PnPPageWebPart(0.3.15) - Renamed
Export-PnPClientSidePagetoExport-PnPPage(0.3.15) - Renamed
Export-PnPClientSidePageMappingtoExport-PnPPageMapping(0.3.15) - Deprecated
Get-AvailableClientSidePageComponents. UseGet-PnPPageComponents -Page <yourpage> -ListAvailable(0.3.15) - Renamed
Get-PnPClientSidePageComponentstoGet-PnPPageComponents(0.3.15) - Renamed
Get-PnPClientSidePagetoGet-PnPPage(0.3.15) - Renamed
Move-PnPClientSidePageComponenttoMove-PnPPageComponent(0.3.15) - Renamed
Remove-PnPClientSidePagetoRemove-PnPPage(0.3.15) - Renamed
Remove-PnPClientSideComponenttoRemove-PnPPageComponent(0.3.15) - Renamed
Save-PnPClientSidePageConversionLogtoSave-PnPPageConversionLog(0.3.15) - Renamed
Set-PnPClientSidePagetoSet-PnPPage(0.3.15) - Renamed
Set-PnPClientSideTexttoSet-PnPPageTextPart(0.3.15) - Renamed
Set-PnPClientSideWebParttoSet-PnPPageWebPart(0.3.15) - Removed '-Url' parameter from
Set-PnPWebPermission. Use-Identityinstead. (0.3.13) - Renamed
Get-PnPSubWebstoGet-PnPSubWebwhich is in line with PowerShell naming standards which state that cmdlets should use a singalar noun. Alias forGet-PnPSubWebsis available. (0.3.13) Register-PnPManagementShellAccessnow uses a popup window to authenticate you when your run the cmdlet on Windows (0.3.10)- Breaking change: we changed
Grant-PnPTenantServicePrincipalPermissionandRevoke-PnPTenantServicePrincipalPermissionto use the Graph behind the scenes. This is a breaking change when it comes to the required permissions, but the new approach is more future proof. (0.3.8) - Refactored internal code to use hardcoded PnP prefixes for cmdlets, which allows $PSDefaultParameterValues in PowerShell to work as expected. (0.3.7)
- Added
-HeaderLayoutTypeparameter toSet-PnPClientSidePage(0.3.6) - Fixed documentation for
Clear-PnPRecycleBinItem(0.3.6) - Fixed issue with
Invoke-PnPTenantTemplatenot being able to acquire correct access token (0.3.6) - Added
GrouplessTeamSiteoption to-WebTemplateparameter forAdd-PnPSiteDesignandSet-PnPSiteDesign(0.3.6)
- Gautam Sheth [gautamdsheth]
- Todd Klindt [toddklindt]
- Michael Jensen [michael-jensen]
- Frank Potrafky [FPotrafky]
- Veronique Lengelle [veronicageek]
- James May [fowl2]
- Added
Convert-PnPSiteTemplateToMarkdownto convert an existing XML based template to a markdown report. Notice that this is work in progress and the functionality will increase. See also the 'Changed' section below for information aboutGet-PnPSiteTemplate(0.3.5) - Added
-UseWebloginand-ForceAuthenticationtoConnect-PnPOnlineto allow using Multi-Factor Authentication. Notice this uses cookie based authentication, which is limited in its functionality. Using -UseWebLogin we will for instance not be able to acquire an access token for the Graph, and as a result none of the Graph related cmdlets will work. Also some of the functionality of the provisioning engine (Get-PnPSiteTemplate,Get-PnPTenantTemplate,Invoke-PnPSiteTemplate,Invoke-PnPTenantTemplate) will not work because of this reason. The cookies will in general expire within a few days and if you use-UseWebLoginwithin that time popup window will appear that will dissappear immediately, this is expected. Use-ForceAuthenticationto reset the authentication cookies and force a new login. (0.2.25) - Allowed to specify -ClientId when logging in with credentials so people can use their own Azure AD apps and credentials for authentication towards SharePoint Online (0.2.17)
- Added environment variable check (set
PNPPOWERSHELL_UPDATECHECKtoOff) to Connect-PnPOnline to skip version check if set. (0.2.15) - Added
Get-PnPChangeLogcmdlet which returns this changelog. (0.2.14) - Added
-DeviceLoginparameter toRegister-PnPAzureADApp(renamed from Initialize-PnPPowerShellAuthentication in 0.2.15) which allows for users with MFA to setup a custom app (0.2.12) - Added
NoVersionCheckoptional flag toConnect-PnPOnlinePR#28 (0.2.9) - Added native support for Secret Management Modules (0.1.34)
- Marked -ExcludeSiteUrl as obselete on
Get-PnPMicrosoft365Groupfor performance reasons. Use -IncludeSiteUrl instead. - Added -CloudShell switch to
Connect-PnPOnlinewhich can be used in the Azure Cloud Shell. If specified you will automatically authenticate using the current identity you're logged in with to the Azure Cloud Shell. Notice: only Graph based cmdlets (Teams, Microsoft Groups etc.) will function. For SharePoint connectivity use one of the other connection options withConnect-PnPOnline. - Added -DisableCustomAppAuthentication to
Set-PnPTenantand added support for DisableCustomAppAuthentication inGet-PnPTenant.
- Added
Add-PnPHubToHubAssociationcmdlet. - Added
Export-PnPUserInfocmdlet. - Added
Add-PnPSiteScriptPackagecmdlet. - Added
Export-PnPUserProfilecmdlet (0.1.6). - Added
Get-PnPAppErrorscmdlet (0.1.6) - Added
Get-PnPAppInfocmdlet (0.1.6) - Added
Get-PnPBrowserIdleSignOutcmdlet (0.1.6) - Added
Set-PnPBrowserIdleSignOutcmdlet (0.1.6) - Added
Get-PnPBuiltInDesignPackageVisibilitycmdlet (0.1.6) - Added
Set-PnPBuiltInDesignPackageVisibilitycmdlet (0.1.7) - Added
Get-PnPExternalUsercmdlet (0.1.7) - Added
Remove-PnPExternalUsercmdlet (0.1.7) - Added
Get-PnPSiteCollectionAppCatalogscmdlet (0.1.7) - Added
Request-PnPPersonalSitecmdlet (0.1.7) - Added
Get-PnPSiteGroupcmdlet (0.1.8) - Added
Get-PnPSiteUserInvitationscmdlet (0.1.8) - Added
Invoke-PnPSiteSwapcmdlet (0.1.8) - Added
New-PnPSdnProvidercmdlet (0.1.8) - Added
Remove-PnPSdnProvidercmdlet (0.1.8) - Added
Remove-PnPHubToHubAssocationcmdlet (0.1.9) - Added
Remove-PnPSiteUserInvitationscmdlet (0.1.9) - Added
Remove-PnPTenantSyncClientRestrictioncmdlet (0.1.9) - Added
Remove-PnPUserInfocmdlet (0.1.9) - Added
Remove-PnPUserProfilecmdlet (0.1.9) - Added
Repair-PnPSitecmdlet (0.1.9) - Added
Test-PnPSitecmdlet (0.1.9) - Added
Revoke-PnPUserSessioncmdlet (0.1.9) - Added
New-PnPSiteGroupcmdlet (0.1.9) - Added
Remove-PnPSiteGroupcmdlet (0.1.9) - Added
Set-PnPSiteGroupcmdlet (0.1.9) - Added
Set-PnPSiteScriptPackagecmdlet (0.1.9) - Added
Update-PnPUserTypecmdlet (0.1.9) - Added
Get-SPOStructuralNavigationCacheSiteStatecmdlet (0.1.10) - Added
Get-SPOStructuralNavigationCacheWebStatecmdlet (0.1.10) - Added
Set-SPOStructuralNavigationCacheSiteStatecmdlet (0.1.10) - Added
Set-SPOStructuralNavigationCacheWebStatecmdlet (0.1.10) - Added
Add-PnPTermToTermcmdlet (0.1.11) - Added
Get-PnPTermLabelcmdlet (0.1.11) - Added
Remove-PnPTermLabelcmdlet (0.1.11) - Added
Remove-PnPTermcmdlet (0.1.11) - Added
Set-PnPTermcmdlet (0.1.11) - Added
Add-PnPPlannerBucketcmdlet (0.1.16) - Added
Add-PnPPlannerTaskcmdlet (0.1.16) - Added
Get-PnPPlannerBucketcmdlet (0.1.16) - Added
Get-PnPPlannerPlancmdlet (0.1.16) - Added
Get-PnPPlannerTaskcmdlet (0.1.16) - Added
New-PnPPlannerPlancmdlet (0.1.16) - Added
Set-PnPPlannerBucketcmdlet (0.1.16) - Added
Set-PnPPlannerPlancmdlet (0.1.16) - Added
Remove-PnPPlannerBucketcmdlet (0.1.17) - Added
Remove-PnPPlannerPlancmdlet (0.1.17) - Added
Remove-PnPPlannerTaskcmdlet (0.1.17) - Added
Set-PnPPlannerTaskcmdlet (0.1.18)
- Added filename support for .md file with
Get-PnPSiteTemplateto generate a markdown file. e.g. you can now execute for instanceGet-PnPSiteTemplate -Out .\myreport.md -Handlers Lists,ContentTypes,Features,WebSettingsto generate an markdown report of those artifacts. This is work in progress. - Fixed issue with
-UseWebLoginthrows a 403 error when connecting to a different site collection than the root site collection. - Removed
Enable-PnPPowerShellTelemetryandDisable-PnPPowerShellTelemetry. See Configure PnP PowerShell for more information on how to enable or disable telemetry collection (0.2.22) - Obsoleted
-NoTelemetryand-NoVersionCheckonConnect-PnPOnline. You can set these as environment variables now. See Configure PnP PowerShell for more information (0.2.22) - Updated telemetry handling. If the environment variable
PNPPOWERSHELL_DISABLETELEMETRYis set totrue, no telemetry will be recorded. If the .pnppowershelltelemetry file is present in the home folder of the user then the the contents of this file will override the environment variable settings. SeeEnable-PnPPowerShellTelemetryandDisable-PnPPowerShellTelemetryto manage this file. (0.2.21) - Renamed
-CloudShellto-ManagedIdentityonConnect-PnPOnline(0.2.20) -CertificatePathonConnect-PnPOnlinenow accepts a relative path (0.2.19)- Reintroduced
-SPOManagementShellas login option withConnect-PnPOnline(0.2.18) - Fixed issue where Connect-PnPOnline -Url [url] -AccessToken [token] is not creating an client context. (0.2.17)
- Renamed
Initialize-PnPPowerShellAuthenticationtoRegister-PnPAzureADApp(0.2.15) - Updated
Get-PnPAzureCertificateto work on Windows and Non-Windows OSes. (0.2.15) - Updated
Get-PnPAzureCertificateto use-Pathand-Passwordparameters instead of-CertificatePathand-CertificatePasswordparameters (0.2.15) - Fixed using
New-PnPAzureCertificateandGet-PnPAzureCertificatethrowing an exception PR #30 (0.2.15) - Updated
Initialize-PnPPowerShellAuthenticationso it can generate self-signed certs on other platforms than Windows. - Updated
Get-PnPUnifiedAuditLogto support paged results. - Removed SiteUrl parameter from
Register-PnPManagementShellas it is not required anymore - Fixed documentation on Add-PnPTeamsChannel PR#9
- Fixed documentation on Remove-PnPTeamsUser PR#10
- Renamed
Apply-PnPProvisioningTemplatetoInvoke-PnPSiteTemplate. - Renamed
Get-PnPProvisioningTemplatetoGet-PnPSiteTemplate. - Renamed
Add-PnPDataRowsToProvisioningTemplatetoAdd-PnPDataRowsToSiteTemplate. - Renamed
Add-PnPFileToProvisioningTemplatetoAdd-PnPFileToSiteTemplate. - Renamed
Add-PnPListFoldersToProvisioningTemplatetoAdd-PnPListFoldersToSiteTemplate. - Renamed
Convert-PnPFolderToProvisioningTemplatetoConvert-PnPFolderToSiteTemplate. - Renamed
Convert-PnPProvisioningTemplatetoConvert-PnPSiteTemplate. - Renamed
Export-PnPListToProvisioningTemplatetoExport-PnPListToSiteTemplate. - Renamed
New-PnPProvisioningTemplatetoNew-PnPSiteTemplate. - Renamed
New-PnPProvisioningTemplateFromFoldertoNew-PnPSiteTemplateFromFolder. - Renamed
Read-PnPProvisioningTemplatetoRead-PnPSiteTemplate. - Renamed
Remove-PnPFileFromProvisioningTemplatetoRemove-PnPFileFromSiteTemplate. - Renamed
Save-PnPProvisioningTemplatetoSave-PnPSiteTemplate. - Renamed
Set-PnPProvisioningTemplateMetadatatoSet-PnPSiteTemplateMetadata. - Renamed
Add-PnPProvisioningTemplatetoAdd-PnPSiteTemplate. - Renamed
Apply-PnPTenantTemplatetoInvoke-PnPTenantTemplate. - Removed
Get-PnPAppInstance. UseGet-PnPAppinstead. - Removed
Import-PnPAppPackage. UseInstal-PnPAppinstead. - Removed
Uninstall-AppInstance. UseUninstall-PnPAppinstead. - Removed
Get-PnPHealthScoreas the value reported is only applicable to on-premises. - Removed
-MinimalHealthScorefromConnect-PnPOnlineas the value reported from the server only applies to on-premises. - Removed
-SkipTenantAdminCheckfromConnect-PnPOnline. Check will be executed everytime where applicable. - Removed Obsolete parameter
-FromRecycleBinfromRemove-PnPTenantSite. UseClear-PnPTenantRecycleBinIteminstead. - Removed
-UserCodeMaximumLeveland-UserCodeWarningLevelfromSet-PnPTenantSite: sandboxed solutions have been deprecated from SharePoint Online and these values are not applicable anymore. - Removed
-Outparameter onNew-PnPAzureCertificate. Use-OutPfxinstead. - Removed
Enable-PnPResponsiveUIandDisable-PnPResponsiveUI. - Removed
Disable-PnPInPlaceRecordsManagementForSite. UseSet-PnPInPlaceRecordsManagement -Enabled $false. - Removed
Enable-PnPInPlaceRecordsManagementForSite. UseSet-PnPInPlaceRecordsManagement -Enabled $true. - Removed
Measure-PnPResponseTime. Use Fiddler for more detailed data instead. - Removed
-Identityfrom Get-PnPAvailableLanguage as it does not apply to SharePoint Online. - Removed
Get-PnPManagementApiAccessTokenandGet-PnPOfficeManagementApiAccessTokencmdlets. Use Connect-PnPOnline instead with either the -Scopes parameter and other optional parameters - Removed alias
Connect-PnPHubsite. UseAdd-PnPHubSiteAssociation. - Removed alias
Disconnect-PnPHubSite. UseRemove-PnPHubSiteAssociation. - Removed alias
Add-PnPOffice365GroupToSite. UseAdd-PnPMicrosoft365GroupToSite. - Removed alias
Add-PnPUnifiedGroupMember. UseAdd-PnPMicrosoft365GroupMember. - Removed alias
Add-PnPUnifiedGroupOwner. UseAdd-PnPMicrosoft365GroupOwner. - Removed alias
Clear-PnPUnifiedGroupMember. UseClear-PnPMicrosoft365GroupMember. - Removed alias
Clear-PnPUnifiedGroupOwner. UseClear-PnPMicrosoft365GroupOwner. - Removed alias
Get-PnPDeletedUnifiedGroup. UseGet-PnPDeletedMicrosoft365Group. - Removed alias
Get-PnPUnifiedGroup. UseGet-PnPMicrosoft365Group. - Removed alias
Get-PnPUnifiedGroupMembers. UseGet-PnPMicrosoft365GroupMembers. - Removed alias
Get-PnPUnifiedGroupOwners. UseGet-PnPMicrosoft365GroupOwners. - Removed alias
New-PnPUnifiedGroup. UseNew-PnPMicrosoft365Group. - Removed alias
Remove-PnPDeletedUnifiedGroup. UseRemove-PnPDeletedMicrosoft365Group. - Removed alias
Remove-PnPUnifiedGroup. UseRemove-PnPMicrosoft365Group. - Removed alias
Remove-PnPUnifiedGroupMember. UseRemove-PnPMicrosoft365GroupMember. - Removed alias
Remove-PnPUnifiedGroupOwner. UseRemove-PnPMicrosoft365GroupOwner. - Removed alias
Restore-PnPDeletedUnifiedGroup. UseRestore-PnPDeletedMicrosoft365Group. - Removed alias
Set-PnPUnifiedGroup. UseSet-PnPMicrosoft365Group. - Removed alias
Execute-PnPQuery. UseInvoke-PnPQuery. - Removed alias
Ensure-PnPFolder. UseResolve-PnPFolder. - Removed
Install-PnPSolution. Sandboxed solutions have been deprecated. - Removed
Add-PnPWorkflowDefinition,Add-PnPWorkflowSubscription,Get-PnPWorkflowDefinition,Get-PnPWorkflowInstances,Get-PnPWorkflowSubscription,Remove-PnPWorkflowDefinition,Remove-PnPWorkflowSubscription,Resume-PnPWorkflowInstance,Start-PnPWorkflowInstanceandStop-PnPWorkflowInstancedue to deprecated of the Workflow Services in SharePoint Online. - Renamed
Test-PnPOffice365AliasIsUsedtoTest-PnPMicrosoft365AliasIsUsed - Refactored some of the Taxonomy cmdlet parameters. See documentation.
- Change in
Copy-PnPFilewhich should resolve some issues you may run into when copying files PR #2796 - Fixed several issues with
Get-PnPSubwebsand added optional parameter-IncludeRootWebPR #3011
- Koen Zomers [koenzomers]
- Carlos Marins Jr [kadu-jr]
- Aimery Thomas [a1mery]
- Veronique Lengelle [veronicageek]