Releases: pnp/powershell
Releases · pnp/powershell
Release 3.1.0
Fixed
- Fixed issues with cmdlets not being able to read embedded resources
Removed
Contributors
- Erwin van Hunen [erwinvanhunen]
- Bert Jansen [jansenbe]
Release 3.0.0
Added
- Added
-PersistLoginonConnect-PnPOnlinewhich will utilize a persist cache containing your access token. The cache is encrypted and stored in a subfolder in your $HOME folder on Windows. On MacOS the cache is stored in the encrypted KeyChain. You only have to specify-PersistLoginonce when doing a Connect-PnPOnline, after that the cache entry will be used. The cache is persisted between PowerShell sesions and system reboots. To clear an entry from the cache useDisconnect-PnPOnline -ClearPersistedLogin. - Added tab completers for all cmdlets using a ListPipeBind parameter (e.g.
Get-PnPList -Identity), all cmdlets using a FieldPipeBind parameter (e.g.Get-PnPField -Identity),Get-PnPPropertyBag, ContentType related cmdlets (Get-PnPContentTypeetc.) and Page related (Get-PnPPageetc.) cmdlets. The argument lookup will timeout after 2 seconds. This value can controlled by setting an environment variables called "PNPPSCOMPLETERTIMEOUT" and set the value to a number specifying milliseconds (e.g. 2000 is 2 seconds). If you want to disable the completer functionality on tabs, set the timeout value to 0 (zero). - Added
Reset-PnPDocumentIDcmdlet to request resetting the document ID for a document #4238 - Added
Reset-PnPDocumentIDcmdlet to request resetting the document IDs for all documents in a library using a specific content type #4755 - Added
Get-PnPPriviledgedIdentityManagementEligibleAssignment,Get-PnPPriviledgedIdentityManagementRoleandEnable-PnPPriviledgedIdentityManagementcmdlets to allow scripting of enabling Privileged Identity Management roles for a user #4039 - Added
Add-PnPTenantRestrictedSearchAllowedListwhich allows setting up a list of allowed URLs for Restricted SharePoint Search #3993 - Added optional
-IsCopilotSearchabletoAdd-PnPOrgAssetsLibrarywhich allows for an organizational assets library to be accessible to Microsoft 365 CoPilot for searching corporate images #4254 - Added
Set-PnPOrgAssetsLibrarycmdlet which allows for updating the settings of an existing organizational assets library #4254 - Added additional Graph permissions to the GraphPermissions parameter set. #4283
- Added
-SignInAudienceparameter toRegister-PnPEntraIDAppandRegister-PnPEntraIDAppForInteractiveLoginwhich allows you to make the EntraID app support creation of multi-tenant apps. #4289 - Added
-OutputInstanceparameter toExport-PnPPagecmdlet to allow export of the page as in-memory template. #4323 - Added
-X509KeyStorageFlagsparameter toConnect-PnPOnlinecmdlet which allows setting of how private keys are to be imported. #4324 - Added
-RestrictContentOrgWideSearchparameter toSet-PnPSitewhich allows for applying the Restricted Content Discoverability (RCD) setting to a site #4335 - Added
-LaunchBrowserparameter toRegister-PnPEntraIDAppForInteractiveLoginandRegister-PnPEntraIDAppcmdlets to open browser and continue app registration in the browser. #4347 & #4348 - Added
Get-PnPSearchExternalItemwhich allows retrieving the current external items for a specific external connection #4375 - Added
Remove-PnPSearchExternalItemwhich allows for removal of an external item from the Microsoft Search index #4378 - Added
-Scopesparameter toGet-PnPAccessTokencmdlet to retrieve access token with specific scopes. #4398 - Added
-Iconand-Colorparameters toSet-PnPListcmdlet. #4409 - Added
Remove-PnPTenantRestrictedSearchAllowedListcmdlet to removes site URLs from the allowed list when Restricted SharePoint Search is enabled. #4399 - Added
Get-PnPDeletedFlowcmdlet to retrieve a list of flows which are soft deleted. #4396 - Added
Restore-PnPFlowcmdlet which allows for undeleting a flow within 21 days of deletion. #4415 - Added
-ExcludeDeprecatedtoExport-PnpTaxonomywhich allows for deprecated terms to be excluded from the export #4053 - Added
-HidePeoplePreviewingFilestoSet-PnPSitewhich allows for hiding the people previewing files feature on a site #4416 - Added
-AllowWebPropertyBagUpdateWhenDenyAddAndCustomizePagesIsEnabledtoSet-PnPTenantwhich allows for updating of web property bag when DenyAddAndCustomizePages is enabled #4508 - Added
SiteIdto the output ofGet-PnPTenantSite#4527 - Added
Add-PnPFileSensitivityLabelwhich allows for assigning sensitivity labels to SharePoint files #4538 Add-PnPApp,Publish-PnPApp,Remove-PnPAppandUnpublish-PnPAppnow have-Forceparameter to change the site to allow scripts to be temporarily enabled. #4554- Added
-CanSyncHubSitePermissionsparameter toSet-PnPSitecmdlet to set value of allowing syncing hub site permissions to this associated site. #4555 - Added
Get-PnPProfileCardProperty,New-PnPProfileCardPropertyandRemove-PnPProfileCardPropertycmdlets to manage showing additional properties on the Microsoft 365 user profile #4548 - Added
Get-PnPCopilotAdminLimitedModeandSet-PnPCopilotAdminLimitedModewhich allows for managing the setting that controls whether Microsoft 365 Copilot in Teams Meetings users can receive responses to sentiment-related prompts #4562 - Added
-Contributorsand-Managersparameters toNew-PnPTermGroupandSet-PnPTermGroupcmdlets. - Added
-Filesparameter forSend-PnPMailcmdlet to allow files to be downloaded from SharePoint and then sent as attachments. - Added
-Forceparameter toSet-PnPPropertyBagValuecmdlet to toggle NoScript status of the site. - Added
-Batchparameter toInvoke-PnPGraphMethodcmdlet to allow adding request in a batch. - Added
-Listparameter toGet-PnPFolderItem,Get-PnPFileInFolderandGet-PnPFolderInFolderwhich allows them to work with a document library containing more than 5,000 items #4611 - Added
Start-PnPTraceLog,Stop-PnPTraceLogandGet-PnPTraceLogcmdlets to handle tracelogging. RemovedSet-PnPTraceLogcmdlet. - Added
-ListPermissionScopesparameter onGet-PnPAccessTokencmdlet to list the current permission scopes on the current access token. - Added
Get-PnPCopilotAgentcmdlet that returns the Microsoft Copilot Agents in a site collection. - Added
Get-PnPFileRetentionLabelcmdlet to fetch the file retention labels. #4603 - Added
Get/Set/Remove-PnPUserProfilePhotocmdlets to download, upload or remove the profile photo of the specified user. - Added
New/Get/Remove/Update-PnPTodoListcmdlets to manage Todo lists. - Added
Set-PnPFileRetentionLabelwhich allows setting a retention label on a file in SharePoint or locking/unlocking it. #4457 - Added
Get-PnPFileCheckedOutcmdlet to retrieve all files that are currently checked out in a library #4682 - Added
Get-PnPTenantPronounsSettingandSet-PnPTenantPronounsSettingcmdlets to manage the availability of using pronouns in the organization #4660 - Added
HidePeopleWhoHaveListsOpenparameter toSet-PnPSitecmdlet to hide people who simultaneously have lists open #4699 - Added
-WhoCanShareAllowListInTenant,-LegacyBrowserAuthProtocolsEnabled,-EnableDiscoverableByOrganizationForVideos,-RestrictedAccessControlforSitesErrorHelpLink,-Workflow2010Disabled,-AllowSharingOutsideRestrictedAccessControlGroups,-HideSyncButtonOnDocLib,-HideSyncButtonOnODB,-StreamLaunchConfig,-EnableMediaReactions,-ContentSecurityPolicyEnforcementand-DisableSpacesActivationtoSet-PnPTenant#4681 - Added
Start-PnPEnterpriseAppInsightsReportandGet-PnPEnterpriseAppInsightsReportwhich allow working with App Insights repors #4713 - Added
Set-PnPSiteDocumentIdPrefixwhich allows changing of the document id prefix on a site collection #4765 - Added
Get-PnPMicrosoft365Roadmapwhich allows retrieval of the Microsoft 365 Roadmap items #4764 - Added
-Nameparameter toAdd-PnPApplicationCustomizercmdlet to allow for specifying the name of the application customizer #4767 - Added
Get-PnPTraceLogcmdlet which allows reading from the detailed in memory logs of the PnP PowerShell cmdlet execution [#4794](https://github.com/pnp/powershell/pull...
Release 2.12.0
Added
- Added support for
WAMlogin for Windows OS to support Windows Hello, FIDO keys, Conditional Access policies and other secure authentication modes. - Added
-SkipCertCreationparameter inRegister-PnPAzureADAppcmdlet to prevent creation and uploading of certificates in the Entra ID app. - Added support to
-ValidateConnectionin managed identity authentication. - Added
New-PnPSearchExternalConnection,Get-PnPSearchExternalConnection,Set-PnPSearchExternalConnectionandRemove-PnPSearchExternalConnectioncmdlets to manage external connections for Microsoft Search #4231 - Added
Get-PnPSearchExternalSchemaandSet-PnPSearchExternalSchemacmdlets to manage the schema for external connections for Microsoft Search #4231 - Added
OverrideSharingCapability,RequestFilesLinkExpirationInDays&RequestFilesLinkEnabledparameters toSet-PnPTenantSitecmdlet.
Changed
- Release due to deprecation/shutdown of support for the PnP Management Shell Refer to https://pnp.github.io/powershell/articles/registerapplication.html on how to registration your own application
- Added output for clientid/Entra App Id when using
-VerbosewithConnect-PnPOnline - Added
-OutputTaskswitch toAdd-PnPPlannerTaskcmdlet which will return the just created task so inspect its ID, ETag, etc. values. - Improved
Invoke-PnPGraphMethodcmdlet now to also support a hashtable value for the AdditionalHeaders parameter besides the current Dictionary<string,string>. See documentation. - Improved managed identity authentication for connecting to different M365 services.
- Improved error message for
Export-PnPPagecmdlet when the page doesn't exist. - Improved
Register-PnPEntraIDApp&Register-PnPEntraIDAppForInteractiveLogincmdlets to better work in non-commercial cloud environments. - Improved
Get-PnPDiagnosticscmdlet to properly handle a scenrio where there's no correlationId.
Fixed
- Removed version check dependency on version.txt located in Github repo. Use metadata from powershellgallery.com instead.
- Fix issue with
Get-PnPDiagnosticscmdlet not working correctly ifCorrelationIdis null. - Fix issue with App-only authentication not properly fetching tokens.
- Fix issue with Power Platform cmdlets not working correctly in non-commercial cloud environments.
- Fix issue with
Get-PnPFlownot working correctly when-AsAdminparameter is specified due to API changes. #4244 - Fix
Connect-PnPOnlinenot returning correctClientIdin the connection object.
Removed
Contributors
- Erwin van Hunen [erwinvanhunen]
- Giacomo Pozzoni [jackpoz]
- Nishkalank Bezawada [NishkalankBezawada]
- Reshmee Auckloo [reshmee011]
- Koen Zomers [koenzomers]
Release 2.10.0
Added
- Added Register-PnPEntraIdAppForInteractiveLogin cmdlet
- Added in depth verbose logging to all cmdlets which is revealed by adding
-Verboseto the cmdlet execution #4023 - Added
-CoreDefaultShareLinkScopeand-CoreDefaultShareLinkRoleparameters toSet-PnPTenantcmdlet. #4067 - Added
-Identityparameter to theGet-PnPFileSharingLinkcmdlet allowing for the retrieval of sharing links based on the file's unique identifier, file instance, listitem instance, or server relative path and supporting retrieval of sharing links for multiple files, such as all in a document library #4093 - Added
Remove-PnPAzureADUserwhich allows removal of a user from Azure Active Directory / Entra ID #4123 - Added support for
GuestSharingGroupAllowListInTenantByPrincipalIdentityandOneDriveSharingCapabilityparameters inSet-PnPTenantcmdlet. #4122 - Added
-AsListItemparamter toGet-PnPFoldercmdlet to return as folder as a list item object. #4151 - Added support for handling
$ErrorActionPreferenceglobal variable to make it work with PnP PowerShell cmdlets. #4079 - Added
-Folderparameter toAdd-PnPDocumentSetcmdlet to allow creation of document sets in a specific folder instead of the list root folder. #4029
Fixed
- Fixed app registration on Windows
Get-PnPTeamsChannelandGet-PnPTeamsPrimaryChannelreturningunknownFutureValueas MembershipType instead ofshared#4054- Fixed using a AzureADUserPipeBind with
New-PnPAzureADUserTemporaryAccessPass,Get-PnPAvailableSensitivityLabelandSet-PnPSearchExternalItemto not work when passing in the User ID GUID #4123 - Fixed issue with
Get-PnPWebHeadercmdlet not working properly in Group connected SharePoint sites. #4147 - Fixed issue with
Get-PnPTeamsChannelFilesFoldercmdlet to work properly for channels having data more than 2 GB. #4127
Changed
- Fixed
Update-PnPTeamsUsercmdlet to throw a better error message when after a user is removed from a Team but is still in the connected M365 group, for the few seconds that the 2 are out of sync. #4068 - Changed
-FileUrlonGet-PnPFileSharingLinkto become obsolete. Please switch to using-Identityinstead, passing in the same value #4093
Removed
Contributors
- Dan Cecil [danielcecil]
- Reshmee Auckloo [reshmee011]
- Giacomo Pozzoni [jackpoz]
- Koen Zomers [koenzomers]
- Erwin van Hunen [erwinvanhunen]
Release 2.5.0
Added
- Added
New-PnPLibraryFileVersionBatchDeleteJobandNew-PnPSiteFileVersionBatchDeleteJobcmdlets to queue a job for deleting the file versions based on age. #3799 - Added
New-PnPLibraryFileVersionExpirationReportJobandNew-PnPSiteFileVersionExpirationReportJobcmdlets to queue a job for generating a file version expiration report for all files in a document library or site. #3799 - Added
Remove-PnPLibraryFileVersionBatchDeleteJobandRemove-PnPSiteFileVersionBatchDeleteJobcmdlets to cancel the job for deleting file versions based on age. #3799 - Added
Get-PnPLibraryFileVersionExpirationReportJobProgressandGet-PnPSiteFileVersionExpirationReportJobProgresscmdlets to getting the progress for the job for file versions based on age. #3799 - Added
-UseVersionExpirationReportparameter toGet-PnPFileVersioncmdlet to get the version expiration report for a single file. #3799 - Added
-DelayDenyAddAndCustomizePagesEnforcementparameter toSet-PnPTenantcmdlet which allows delay of the change to custom script set on the Tenant until mid-November 2024. #3815 - Added additional permissions for Graph application permission validate sets. #3835
- Added the ability to upload entire local folders with files and optionally subfolders to SharePoint Online into 'Copy-PnPFolder' #3850
- Added
LoopDefaultSharingLinkRole,DefaultShareLinkScope,DefaultShareLinkRole,LoopDefaultSharingLinkScopeandDefaultLinkToExistingAccessResetparameters toSet-PnPTenantcmdlet. #3874 - Added
Unlock-PnPSensitivityLabelEncryptedFilewhich allows the encryption to be removed from a file #3864 - Added
Get-PnPLibraryFileVersionBatchDeleteJobStatusandGet-PnPSiteFileVersionBatchDeleteJobStatusto check on the status of applying file based version expiration based on age on a library and site level #3828 - Added support for
Get-PnPSiteCollectionAppCatalogandGet-PnPTenantSiteto be used with vanity domain tenants #3895 - Added support for using vanity domain tenants with
Grant-PnPTenantServicePrincipalPermission,Revoke-PnPTenantServicePrincipalPermission,Set-PnPWebTheme,Invoke-PnPListDesign,Set-PnPSite,Add-PnPSiteDesignTask,Get-PnPSiteDesignRun,Get-PnPSiteDesignTaskandInvoke-PnPSiteDesigncmdlets #3898 - Added
-DetailedtoGet-PnPMicrosoft365Groupwhich allows retrieval of the AllowExternalSenders, IsSubscribedByMail and AutoSubscribeNewMembers properties of the group #3958 - Added
-RequireSenderAuthenticationEnabledand-AutoSubscribeNewMemberstoSet-PnPMicrosoft365Groupwhich allows setting these properties on a group #3958 - Added
Get-PnPContainerTypecmdlet to retrieve the list of Container Types created for a SharePoint Embedded Application in the tenant. #3946 - Added
-RecycleBinRetentionPeriod,-OneDriveBlockGuestsAsSiteAdmin,-OneDriveDefaultShareLinkRole,-OneDriveDefaultShareLinkScopeand-OneDriveDefaultLinkToExistingAccessparameters to theSet-PnPTenantcmdlet. #3977 - Added
Get-PnPTenantRestrictedSearchModeandSet-PnPTenantRestrictedSearchModecmdlets to enable and set up Restricted SharePoint Search. #3976 - Added
Get-PnPTenantInternalSettingcmdlet to retrieve internal tenant settings not exposed via CSOM SDK. #3902 - Added
Add-PnPHomeSitecmdlet to add a home site to your tenant. #3989 - Added
Get-PnPPageSchedulingEnabledcmdlet to get the state of the modern page schedule feature in the library. PR - Added
-IncludeSensitivityLabelsparameter toGet-PnPMicrosoft365Groupcmdlet to retrieve sensitivity labels assigned to M365 Groups. #3991 - Added
Get-PnPFileSensitivityLabelInfocmdlet to retrieve sensitivity label information about a file in a SharePoint site. #3994 - Added
Get-PnPTenantRestrictedSearchAllowedListcmdlet to retrieve existing list of URLs in the allowed list. #3997 - Added
-IsSharePointAddInsDisabledto theSet-PnPTenantcmdlet which allows disabling SharePoint Add-ins #4032 - Added
-RestrictContentOrgWideSearch,-ReadOnlyForUnmanagedDevicesand-InheritVersionPolicyFromTenantparameters toSet-PnPTenantSitecmdlet. #4024
Fixed
- Fixed
Get-PnPChangeLog -Version 2.3.0not returning the changelog for that version #3804 - Fixed
Get-PnPFlowcmdlet throwing time out error due to incorrect URL used in HTTP request. #3820 - Fixed
Copy-PnPListcmdlet to better handle lookup columns. #3870 - Fixed NullDereferenceException happening when an exception is logged in PnPConnectedCmdlet but the connection passed through -Connection parameter is not the last one. #3885
- Fixed NullDereferenceException in
Get-PnPUserProfilePropertycmdlet when the user profile doesn't exist, showing a better error message. #3891 - Fixed the dev build process on Mac OS devices. #3907
- Fixed
Get-PnPContainercmdlet to also handle pagination in case of large no. of containers in a tenant. #3990 - Fixed
New-PnPTeamsTeamcmdlet to better handle error specifically such asConflict (409): Team already exists. #3992 - Fixed
Remove-PnPTeamsChannelissue where it was throwing incorrect exception. #4036
Changed
- Renamed
Get-PnPSiteFileVersionExpirationReportJobProgresstoGet-PnPSiteFileVersionExpirationReportJobStatus#3828 - Renamed
Get-PnPSiteVersionPolicyProgresstoGet-PnPSiteVersionPolicyStatus#3828 Remove-PnPGroupMembercmdlet now supports removing members from pipeline. #3955- Changed
Set-PnPTenantCdnPolicycmdlet to allow PolicyValue parameter to be an empty string or $null, while still being mandatory. #3937 - Marked
UserVoiceForFeedbackEnabledas obsolete inSet-PnPTenantcmdlet as Microsoft doesn't support this. #3985 Get-PnPTenantSitecmdlet now returns additional properties likeArchiveStatus,EnableAutoExpirationVersionTrimand many more. #3987Add-PnPListFoldersToSiteTemplatecmdlet now wont export RoleBindings which areLimited Access. It caused issues while applying the template. #3918
Removed
- Removed
UserVoiceForFeedbackEnabledproperty fromGet-PnPTenantas it is deprecated. PR
Contributors
- Maxime Hazebroucq [mhazebroucq]
- Paolo Pialorsi [PaoloPia]
- Marc Studer [Studermarc]
- Mark Gort [markgort86]
- Christian Veenhuis [ChVeen]
- Tobias Maestrini [tmaestrini]
- WCONFR [WCONFR]
- Jenny Wu [msjennywu]
- Reshmee Auckloo [reshme011]
- Aimery Thomas [a1mery]
- Arleta Wanat [PowershellScripts]
- Giacomo Pozzoni [jackpoz]
- [blarrywangmsft]
- Koen Zomers [koenzomers]
- Erwin van Hunen [erwinvanhunen]
Release 2.4.0
Added
- Added
-IsDataAccessInCardDesignerEnabledtoSet-PnPTenantwhich allows for configuring Viva Connections Adaptive Cards to connect to backend services for their data #3635 - Added
Remove-PnPContainercmdlet to remove the SharePoint embed container. #3629 - Added
Convert-PnPFilecmdlet which allows for a file to be converted to from one format to another. #3435 & #3643 - Added
Merge-PnPTermcmdlet which allows merging of one term into another. #3638 - Added
Get-PnPDeletedContainercmdlet which returns a list of all deleted Containers in the recycle bin. #3648 - Added
-Batchparameter toAdd-PnPGroupMembercmdlet which allows adding members to a SharePoint group in a batch. #3651 - Added
Get-PnPContainerTypeConfigurationcmdlet which fetches the container type configuration values. #3660 - Added
-AppBypassInformationBarriersand-DefaultOneDriveInformationBarrierModeparameters toSet-PnPTenantcmdlet. #3679 - Added
Get-PnPFileAnalyticsDatacmdlet to allow retrieval of file analytics data. #3644 - Added
Get-PnPSiteAnalyticsDatacmdlet to allow retrieval of site analytics data. #3645 - Added
Get-PnPPowerPlatformSolutioncmdlet to Power Platform solutions. #3675 - Added
New-PnPContainerTypecmdlet to create a new SharePoint container type. #3669 - Added
Remove-PnPContainerTypecmdlet which removes a specific container type. #3689 - Added
Restore-PnPDeletedContainercmdlet which recovers a deleted Container from the Recycle Bin. #3661 - Added the ModerationSettings to be returned with
Get-PnPTeamsChannelwhen passing in-IncludeModerationSettingsand using-Identity <channelId>#3580 - Added
AllowNewMessageFromBots,AllowNewMessageFromConnectors,ReplyRestrictionandUserNewMessageRestrictiontoSet-PnPTeamsChannelwhich allows setting the moderation settings on a Teams channel #3580 - Added
Get-PnPWebPermissioncmdlet which retrieves permission given by user for specific web. #3685 - Added
-HorizontalQuickLaunchparameter toSet-PnPWebcmdlet to allow navigation orientation to be horizontal. #3722 - Added support for different sovereign cloud environment for Power Platform related cmdlets #3725
- Added
Set-PnPRetentionLabelandReset-PnPRetentionLabelcmdlets to support setting a retention label on one or more items #3599 - Added
-SiteThumbnailUrlparameter toSet-PnPWebHeadercmmdlet to support setting thumbnail of the site. #3746 - Added
-Likeparameter toSet-PnPPagecmdlet to support liking/unliking a modern page. #3788 - Added
Get-PnPPageLikedByInformationcmdlet to retrieve list of users who liked a modern page. #3781
Fixed
- Fixed
Grant-PnPAzureADAppSitePermissioncmdlet which allows it to work in multi-geo environment. #3658 - Fixed
Get-PnPTeamsChannelMessageReplycmdlet which didn't work correctly when-IncludeDeletedparameter was not specified. #3676 - Fixed
Add-PnPNavigationNodecmdlet to also search for nodes in child navigation items. #3625 - Fixed
Get-PnPFlowcmdlet to use the newer Flow URLs instead of the old ARM URLs. #3677 - Fixed
Get-PnPPowerPlatformConnector,Get-PnPPowerPlatformEnvironment,Get-PnPPowerApp,Add-PnPFlowOwner,Disable-PnPFlow,Enable-PnPFlow,Export-PnPFlow,Get-PnPFlowOwner,Get-PnPFlowRun,Remove-PnPFlow,Remove-PnPFlowOwner,Restart-PnPFlowandStop-PnPFlowRuncmdlets to use the new HTTP endpoints. #3687 - Fixed
Add-PnPHubSiteAssociationcmdlet to allow support for multi-geo scenario. #3568 - Fixed
Enable/Disable-PnPPageSchedulingcmdlet to also work with Viva connections enabled site. #3713 - Fixed
Register-PnPManagementShellAccessandRegister-PnPAzureADAppcmdlets to also work with custom environment. #3763 - Fixed
Set-PnPPPagecmdlet to only change layout of the page if the parameter is specified. #3777 - Fixed
New-PnPGroupcmdlet to correctly show the group description with HTML making it similar toSet-PnPGroup.
Changed
-IsFavoriteByDefaultparameter is now obsolete inAdd-PnPTeamsChannelcmdlet due to deprecation by Microsoft Graph API. #3712Get-PnPSiteTemplatewill now only containPersistPublishingFiles,IncludeNativePublishingFiles,IncludeTermGroupsSecurity,IncludeSearchConfiguration,SkipVersionCheckandPersistMultiLanguageResourcesif these are provided with the cmdlet as switch parameters #3715- Due to backend changes in Microsoft Graph,
Get-PnPUnifiedAuditLogcmdlet requires some more permissions. Updated the cmdlet to handle that. #3745
Contributors
- Arleta Wanat [PowershellScripts]
- Jenny Wu [msjennywu]
- Aimery Thomas [a1mery]
- Nils Andresen [nils-a]
- Gautam Sheth [gautamdsheth]
- Nishkalank Bezawada [NishkalankBezawada]
- Leon Armston [LeonArmston]
- Daniel Cecil [danielcecil]
- Rohit Devmore [rohit404404]
- Konrad K. [wilecoyotegenius]
- Kunj Balkrishna Sangani [kunj-sangani]
- Koen Zomers [koenzomers]
- Reshmee Auckloo [reshme011]
- Jørgen Wiik [joHKwi]
- Siddharth Vaghasia [siddharth-vaghasia]
- Jürgen Rosenthal-Buroh [JuergenRB]
Release 2.3.0
Added
- Added
-MediaTranscriptionand-MediaTranscriptionAutomaticFeaturestoSet-PnPTenantwhich allows for configuring the media transcription settings. #3238 - Added
-Includesoption toGet-PnPListItemwhich allows for specifying additional fields to be retrieved. #3270 - Added
-AllowCommentsTextOnEmailEnabledparameter toSet-PnPTenantwhich allows including the surrounding document context in email notification when user is mentioned in document comments. #3268 - Added
Export-PnPPowerAppcmdlet which will export a specified PowerApp as zip package. #2990 - Added
AzureADLoginEndPointandMicrosoftGraphEndPointparameters toConnect-PnPOnlinecmdlet for use in custom Azure environments. #2925 - Added
Get-PnPFoldercmdlet without any parameters to return the folder representing the root of the current web #3319 - Added
Get-PnPFileInFoldercmdlet which allows retrieval of all files in a folder or site and optionally request additional properties from them #3319 - Added
Get-PnPFolderInFoldercmdlet which allows retrieval of all folders in a folder or site and optionally request additional properties from them #3319 - Added
-SharingStatusparameter toGet-PnPFlowwhich allows for filtering flows based on their sharing status. #3287 - Added
-AzureADLoginEndPointand-MicrosoftGraphEndPointparameters toConnect-PnPOnlinecmdlet for use in custom Azure environments. #2925 - Added
SiteOwnerManageLegacyServicePrincipalEnabledparameter toSet-PnPTenantcmdlet. With this parameter site owners will not be able to register/update apps unless the tenant admin explicitly allows it. #3318 - Added
-EnableAutoExpirationVersionTrim,-ExpireVersionsAfterDays,-MajorVersions,-MinorVersions,-InheritTenantVersionPolicySettings,-StartApplyVersionPolicySettingToExistingDocLibsand-CancelApplyVersionPolicySettingToExistingDocLibstoSet-PnPSiteto allow for time based version expiration on the site level #3373 - Added
-ReduceTempTokenLifetimeEnabled,-ReduceTempTokenLifetimeValue,-ViewersCanCommentOnMediaDisabled,-AllowGuestUserShareToUsersNotInSiteCollection,-ConditionalAccessPolicyErrorHelpLink,-CustomizedExternalSharingServiceUrl,-IncludeAtAGlanceInShareEmailsand-MassDeleteNotificationDisabledtoSet-PnPTenant#3348 - Added
Add-PnPFlowOwnerandRemove-PnPFlowOwnercmdlets which allow granting or removing permissions to a Power Automate flow #3343 - Added
Get-PnPFlowOwnercmdlet which allows retrieving the owners of a Power Automate flow #3314 - Added
-AvailableForTaggingtoSet-PnPTermwhich allows the available for tagging property on a Term to be set #3321 - Added
Get-PnPPowerPlatformConnectorcmdlet which allows for all custom connectors to be retrieved #3309 - Added
Set-PnPSearchExternalItemcmdlet which allows ingesting external items into the Microsoft Search index for custom connectors. #3420 - Added
Get-PnPTenantInfowhich allows retrieving tenant information by its Id or domain name #3414 - Added option to create a Microsoft 365 Group with dynamic membership by passing in
-DynamicMembershipRule#3426 - Added option to pass in a Stream or XML string to
Read-PnPTenantTemplateallowing the tenant template to be modified before being applied. #3431 - Added
Get-PnPTenantInfowhich allows retrieving tenant information by its Id or domain name. #3414 - Added option to create a Microsoft 365 Group with dynamic membership by passing in
-DynamicMembershipRule#3426 - Added
Get-PnPSiteVersionPolicywhich allows retrieval of the version policy settings for a site #3470 - Added
RestrictedAccessControl,ClearRestrictedAccessControl,RemoveRestrictedAccessControlGroups,AddRestrictedAccessControlGroupsandRestrictedAccessControlGroupsparameters toSet-PnPTenantSitecmdlet to handle restricted access control. #3463 - Added
Get-PnPRetentionLabelcmdlet to retrieve Purview retention labels. #3459 - Added GCC support for
Get-PnPAzureADUser,Add-PnPFlowOwner,Remove-PnPFlowOwner,Sync-PnPSharePointUserProfilesFromAzureActiveDirectory,New-PnPAzureADUserTemporaryAccessPassandGet-PnPAvailableSensitivityLabelcmdlets. #3484 - Added
-Detailedoption toGet-PnPTenantDeletedSiteto optionally fetch more information on the deleted sites #3550 - Added a devcontainer for easily building a minimal environment necessary to contribute to the project. #3497
- Added
-RelativeUrlparameter toConnect-PnPOnlinecmdlet to allow specifying custom URLs for usage with-WebLoginmethod. #3530 - Added
-RetryCounttoSubmit-PnPSearchQuerywhich allows for specifying the number of retries to perform when an exception occurs #3528 - Added
-MailNicknameparameter toSet-PnPMicrosoft365Groupcmdlet to allow changing of this property on a Microsoft 365 Group #3529 - Added
-SanNamestoNew-PnPAzureCertificatewhich allows for controlling the Subject Alternative Names set on the generated certificate #3555 - Added Information Barriers information to the output of
Get-PnPTenantSite#3556 - Added
RequestFilesLinkEnabledandRequestFilesLinkExpirationInDaysto the output ofGet-PnPSite#3557 - Added
CoreRequestFilesLinkEnabled,CoreRequestFilesLinkExpirationInDays,OneDriveRequestFilesLinkEnabled,OneDriveRequestFilesLinkExpirationInDays,BusinessConnectivityServiceDisabledto the output ofGet-PnPTenant#3557 - Added
-BusinessConnectivityServiceDisabledparameter toSet-PnPTenantcmdlt to allow disabling the Business Connectivity Service #3562 - Added support for executing the 'Invoke-PnPSPRestMethod' cmdlet in a batch #3565
- Added
Get-PnPSiteSetVersionPolicyProgresscmdlet which allows for getting the progress of setting a version policy for existing document libraries on a site #3564 - Added
EnableSensitivityLabelForPDFtoSet-PnPTenantandGet-PnPTenant#3581 - Added the ability to set Manage and FullControl permissions directly when using Sites.Selected with
Grant-PnPAzureADAppSitePermission#3617 - Added
Remove-PnPMicrosoft365GroupPhotocmdlet which allows removal of profile picture of M365 Group. #3607
Fixed
- Fixed
Add-PnPContentTypeToListcmdlet to better handle piped lists. #3244 - Fixed
Get-PnPUserProfilePropertycmdlet not allowing basic user profile properties to be retrieved using-Properties#3247 - Fixed
Export-PnPTermGroupToXmlcmdlet issue with exporting site collection term groups. #3256 - Fixed
Register-PnPAzureADAppcmdlet issue with creation of Azure AD application. #3265 - Fixed
Get-PnPServiceHealthIssuecmdlet issue with null reference objection. #3286 - Fixed
New-PnPSitecmdlet issue with team site creation when using a connection object. #3285 - Fixed issue with colliding assemblies when using PnP PowerShell with other modules. #3280
- Fixed issue with
-ArchiveRedirectUrlparameter not working correctly inSet-PnPTenantcmdlet. #3289 - Fixed
New-PnPAzureADGroupcmdlet throwing null reference error when owners and members are not specified. #3308 - Fixed
New-PnPTeamsTeamcmdlet, it will now throw error if it fails to teamify a Microsoft 365 group. #3310 - Fixed
Get-PnPFolderItemcmdlet not accepting piping a folder instance to it #3319 - Fixed
Get-PnPFolderItemcmdlet not working well with the-Recursiveand-Identityparameters provided together #3319 - F...
Release 2.2.0
Added
- Added
DisableDocumentLibraryDefaultLabeling,DisableListSync,IsEnableAppAuthPopUpEnabled,ExpireVersionsAfterDays,MajorVersionLimitandEnableAutoExpirationVersionTrim,OneDriveLoopSharingCapability,OneDriveLoopDefaultSharingLinkScope,OneDriveLoopDefaultSharingLinkRole,CoreLoopSharingCapability,CoreLoopDefaultSharingLinkScope,CoreLoopDefaultSharingLinkRole,DisableVivaConnectionsAnalytics,CoreDefaultLinkToExistingAccess,HideSyncButtonOnTeamSite,CoreBlockGuestsAsSiteAdmin,IsWBFluidEnabled,IsCollabMeetingNotesFluidEnabled,AllowAnonymousMeetingParticipantsToAccessWhiteboards,IBImplicitGroupBased,ShowOpenInDesktopOptionForSyncedFiles,OneDriveRequestFilesLinkExpirationInDaysandShowPeoplePickerGroupSuggestionsForIBparameters to theSet-PnPTenantcmdlet. #2979 and #3015 - Added
-OutFiletoInvoke-PnPGraphMethodwhich allows for the response to be written to a file #2971 - Added
-OutStreamtoInvoke-PnPGraphMethodwhich allows for the response to be written to a memory stream #2976 - Added
-PreviousNodetoAdd-PnPNavigationNodewhich allows for adding a navigation node after a specific node #2940 - Added
EnableAzureADB2BIntegrationto be returned byGet-PnPTenant#3022 - Added
-SkipUrlValidationtoGet-PnPSiteCollectionAppCatalogwhich allows for skipping the URL validation when retrieving the site collection app catalog making it faster but potentially returning URLs that have been renamed #2305 - Added
Get-PnPLargeListOperationStatuscmdlet to retrieve the status of a large list operation. #3033 - Added
-BlockDownloadFileTypePolicy,-BlockDownloadFileTypeIdsand-ExcludedBlockDownloadGroupIdsparameters toSet-PnPTenantcmdlet. #3081 - Added
-BlockDownloadPolicy,-ExcludeBlockDownloadPolicySiteOwnersandExcludedBlockDownloadGroupIdsparameters toSet-PnPTenantSiteandSet-PnPSitecmdlets. #3084 - Added
-OpenInNewTabparameter toAdd-PnPNavigationNodecmdlet to allow links to be opened in a new tab. #3094 - Added
-ArchiveRedirectUrltoSet-PnPTenantallowing the configuration of a custom page to be shown when navigating to an archived SharePoint Online site #3100 - Added
-BlockSendLabelMismatchEmailtoSet-PnPTenantallowing the warning e-mail being sent when uploading a file with a higher sensitivity label than the site it is being uploaded to to be disabled. #3113 - Added
Move-PnPTermandMove-PnPTermSetcmdlets to allow moving the terms and termsets. #2989 - Added
-VerticalZoneEmphasisparameter toAdd-PnPPageSectioncmdlet to allow setting the emphasis value for vertical columns. #3129 - Added
-AllowDeletionparameter toSet-PnPListcmdlet to allow or prevent deletion of list from the SharePoint UI. #3142 - Added
EnableClassicAudienceTargetingandEnableModernAudienceTargetingparameters toSet-PnPListcmdlet to enable audience targeting in lists. #3153 - Added
-Attachmentsparameter toSend-PnPMailcmdlet to allow sending attachments via Microsoft Graph API. #3157 - Added cmdlets for list item version history:
Get-PnPListItemVersion,Restore-PnPListItemVersionandRemove-PnPListItemVersion. #3086 - Added
Add-PnPFileOrganizationalSharingLinkandAdd-PnPFolderOrganizationalSharingLinkcmdlets to allow creating organizational sharing links for files and folders. #3177 - Added
Add-PnPFileUserSharingLinkandAdd-PnPFolderUserSharingLinkcmdlets to allow creating sharing links for files and folders to share them with specified list of users. #3178 - Added
Get-PnPFileSharingLinkandGet-PnPFolderSharingLinkcmdlets to retrieve sharing links for files and folders respectively. #3181 - Added
Add-PnPFileAnonymousSharingLinkandAdd-PnPFolderAnonymousSharingLinkcmdlets to create anonymous sharing links. #3198 - Added
Add-PnPFileSharingInviteandAdd-PnPFolderSharingInvitecmdlets to invite users to a file or a folder. #3199 - Added
Remove-PnPFileSharingLinkandRemove-PnPFolderSharingLinkcmdlets to delete sharing links associated with files and folders. #3200 - Added
Get-PnPUnfurlLinkcmdlet to support unfurling a link to get more information about the link. #3224 - Added
ListsShowHeaderAndNavigationparameter to always show lists with site elements intact when specified inSet-PnPTenantSiteandSet-PnPSitecmdlets. #3233
Fixed
- Fixed issue with
Grant-PnPAzureADAppSitePermissioncmdlet where users are not able to set selected site in theSites.Selectedpermission. #2983 - Fixed issue with
Get-PnPListcmdlet not working with site-relative URL as identity. #3005 - Fixed issue with
Add-PnPNavigationNodecmdlet where the target audience would not correctly be set when creating a node as a child of a parent node #2940 - Fixed regressions within the following cmdlets
Get-PnPTenantCdnEnabled,Get-PnPTenantCdnOrigin,Get-PnPTenantCdnPolicies,Get-PnPTenantDeletedSite,Get-PnPTenantInstance#3030 - Fixed issue where
Add-PnPSiteCollectionAdmin -PrimarySiteCollectionAdmin <user>would require owners to be specified as well. #3035 - Fixed
Get-PnPAzureADGroupreturns only 100 results even if there are more groups present in Azure AD. #3085 - Fixed
Get-PnPAccessTokencmdlet to correctly retrieve the access token for the specified resource URL. #3091 - Fixed issue with
Get-PnPTenantSyncClientRestrictioncmdlet not populating the necessary properties. #3099 - Fixed
Add/Set/Get-PnPPagecmdlets when using multilingual translation parameters which caused some exceptions. #3120 - Fixed
New-PnPSitecmdlet now supports creating Team site in non-commercial cloud environments. #885 - Fixed issue where
Get-PnPFieldcmdlet was throwing error in case-Includesparameter was used. #3225 - Fixed issue with
Add-PnPDataRowsToSiteTemplatecmdlet where it would throw property not initialized error when using-IncludeSecurityparameter. #3226
Changed
- Improved
Set-PnPSitecmdlet when using theScriptSafeDomainNameparameter. If a domain is already existing, it will now throw a warning. #3073 - Change
Set-PnPWebhookSubscriptionto use the same default expiration date asAdd-PnPWebhookSubsriptioncmdlet which is 180 days instead of 6 months.#3106 - Improved
Set-PnPHomePagecmdlet to handle forward slash issue. #3128 - Improved
Connect-PnPOnlinecmdlet to handle ping on the destination server to check if it exists. PR and #3154 - Improved
Invoke-PnPGraphMethodcmdlet to show a better error message when sufficient permissions are not available. #3133 - Improved
Add-PnPDataRowsToSiteTemplatecmdlet to retrieve list item with pagination. #3152 - Improved error message when caused using Graph endpoints used via PnP Core SDK. #3179
- Improved
Add-PnPDataRowsToSiteTemplatecmdlet performance to not load and execute every list item. #3226
Removed
- Removed alias
Get-PnPSiteCollectionAppCatalogsforGet-PnPSiteCollectionAppCatalog#2305 - Removed alias
Export-PnPClientSidePage, please useExport-PnPPagecmdlet. #3158 - Removed alias
Export-PnPClientSidePageMapping, please useExport-PnPPageMappingcmdlet. #3158 - Removed alias
Get-PnPClientSideComponent, please useGet-PnPPageComponentcmdlet. #3158 - Removed alias
Remove-PnPClientSideComponent, please useRemove-PnPPageComponentcmdlet. #3158 - Removed alias
Set-PnPClientSideText...
Release 2.1.1
Fixed signing issue in release process.
Release 2.1.0
Added
- Added support for
.NET 6.0since.NET Core 3.1support is getting deprecated. We have removed support for .NET Core 3.1, so users will have to update fromPowerShell 7.0.xtoPowerShell 7.2.x or later#2292 - Added default table formatted output for
Get-PnPVivaConnectionsDashboardACE - Added
Get-PnPAzureADServicePrincipalwhich allows for service principals/application registrations to be retrieved from Azure Active Directory #2551 - Added
Get-PnPAzureADServicePrincipalAssignedAppRolewhich allows for the assigned app roles of a service principal/application registration to be retrieved from Azure Active Directory #2551 - Added
Get-PnPAzureADServicePrincipalAvailableAppRolewhich allows for the available app roles of a service principal/application registration to be retrieved from Azure Active Directory #2551 - Added
Add-PnPAzureADServicePrincipalAppRolewhich allows for app roles to be assigned to a service principal/application registration in Azure Active Directory #2551 - Added
Remove-PnPAzureADServicePrincipalAppRolewhich allows for app roles to be removed from a service principal/application registration in Azure Active Directory #2551 - Added latest added SharePoint Online Site Templates to
Set-PnPBuiltInSiteTemplateSettingsallowing them to be hidden or shown #2586 - Added
-EnableAzureADB2BIntegrationand-SyncAadB2BManagementPolicyparameters toSet-PnPTenant#2631 - Added
-ShowInFiltersPanetoSet-PnPFieldwhich allows fields to be shown or hidden in the filters pane #2623 - Added
-KeyColumntoAdd-PnPDataRowsToSiteTemplatewhich allows for overwriting existing list items in a site template #2616 - Added
Get-PnPFolderStorageMetricwhich allows storage usage of a specific folder to be retrieved #2646 - Added
IsTeamsConnected,IsTeamsChannelConnectedandTeamChannelTypeto be returned whenGet-PnPTenantSitecmdlet is executed. #2656 - Added
HTTP/2support for all HTTP requests to improve performance for HTTP requests. #2687 - Added
-EnvironmentVariableparameter toConnect-PnPOnlineto connect using Azure environment variables. #2681 - Added
ResponseHeadersVariableparameter to theInvoke-PnPSPRestMethodwhich if specified will store the response headers values in the PowerShell variable name that is specified. #2711 - Added
-Filterparameter toGet-PnPAzureADServicePrincipalcmdlet to retrieve specific application registrations based on filter conditions. It supports simple and advanced queries. #2710 - Added
-Filterparameter toGet-PnPMicrosoft365Groupcmdlet to retrieve specific M365 groups based on filter conditions. It supports simple and advanced queries. #2709 - Added
-CoreRequestFilesLinkExpirationInDaysand-CoreRequestFilesLinkEnabledtoSet-PnPTenantand-RequestFilesLinkExpirationInDaystoSet-PnPSiteto allow configuration of the new receive files to SharePoint Online folder feature #2719 - Added
PSVersiontracking, which tracks the PowerShell version being used. #Commit - Added
-Bccoption toSend-PnPMail#2726 - Added
-AudienceIdsoption toAdd-PnPNavigationNodeto allow setting the audience for a navigation node #2736 - Added
-PrimarySiteCollectionAdmintoAdd-PnPSiteCollectionAdminto allow for the primary site collection admin to be set on the current site #2750 - Added
-PrimarySiteCollectionAdmintoSet-PnPTenantSiteto allow for the primary site collection admin to be set on a provided site #2750 - Added additional fallback logic for retrieving tokens in Azure VM scenario using well-know endpoint when using Managed Identity authentication. #2761
- Added
-IsVivaConnectionsDefaultStartForCompanyPortalSiteEnabledparameter toGet-PnPHomeSitewhich returns information on whether Viva Connections landing experience is set to the SharePoint home site. #2779 - Added
-VivaConnectionsDefaultStartparameter toSet-PnPHomeSitewhich sets the home site to the provided site collection url and keeps the Viva Connections landing experience to the SharePoint home site. #2779 - Added
-LargeListparameter toRemove-PnPListcmdlet which improves the list recycling experience for Lists containing huge number of items. #2778 - Added support for specifying the ContentUrl and WebsiteUrl configuration in
Add-PnPTeamsTabcmdlet when trying to add a SharePoint page or list as a tab in Teams channel. #2807 - Added
-CheckinTypeparameter toAdd-PnPFilecmdlet which provides the option to specify the checkin type for a file. The default value is set toMinorCheckIn. #2806 - Added
-DefaultSensitivityLabelForLibrarytoSet-PnPListwhich allows setting the default sensitivity label for a library. #2825 - Added
-ApplicationIdas alias for-ClientIdinConnect-PnPOnlineandRequest-PnPAccessTokencmdlets. #2805 - Added
-Connectionoption toConnect-PnPOnlinewhich allows of reusing an authenticated connection to connect to a different site #2821 - Added
-UserAssignedManagedIdentityAzureResourceIdand-UserAssignedManagedIdentityClientIdas alternatives to-UserAssignedManagedIdentityObjectIdforConnect-PnPOnline -ManagedIdentityto provide an user managed identity to authenticate with. #2813 - Added clearer error message when connecting using an expired client secret and trying to execute a command.#2828
- Added
Undo-PnPFileCheckedOutwhich allows a checked out file to discard its changes and revert to the last checked in version. #2837 - Added option for sending e-mail using Microsoft Graph and through a SMTP server of choice in the
Send-PnPMailcmdlet #2880 - Added
-OpenDocumentsModeoption toSet-PnPListwhich allows configuring if documents should be opened in the browser or in the local client #2873 - Added
-Propertiesparameter toGet-PnPUserProfilePropertycmdlet which allows retrieval of specific properties if specified. #2840 - Added support for specifying the
-ContentUrlconfiguration inAdd-PnPTeamsTabcmdlet when trying to add a Planner as a tab in Teams channel. #2850 - Added
Get-PnPSharePointAddIncmdlet to retrive list of SharePoint addins installed in the site collection. #2920 - Added
Get-PnPAzureACSPrincipalcmdlet to retrieve list of installed Azure ACS Principals in the site collection or tenant. #2920 - Added
-LogoFilePathparameter toRegister-PnPAzureADAppcmdlet to allow setting the logo for the Azure AD app. #2881 - Added support for
-VerboseinMove-PnPFilewhich will show if it has problems determining if the destination location is a folder or a file #2888 - Added
CalendarMemberReadOnlyandConnectorsDisabledas-ResourceBehaviorOptionstoNew-PnPMicrosoft365Group#2929 - Added
-Identityoption toGet-PnPPowerPlatformEnvironmentwhich allows retrieval of one specific environment by its displayname or id. #2794 - Added
Get-PnPPowerAppwhich allows PowerApps to be retrieved #2794 - Added
-DisableCommentingtoSet-PnPListwhich allows enabling or disabling commenting on a list. #2939 - Added
-EnableAutoExpirationVersionTrimand-ExpireVersionsAfterDaystoSet-PnPListwhich allows enabling or disabling auto expiration of versions on a list or library based on the days passed. #2869 - Added
-Detailedparameter toGet-PnPHomeSitewhich will return detailed information on all home sites configured on the tenant #2954
Changed
Update-PnPVivaConnectionsDashboardACEis now calledSet-PnPVivaConnectionsDashboardACEbutUpdate-PnPVivaConnectionsDashboardACEwill still work as an alias.- All `Set|Get|Remove-PnPVivaConnection...