We are happy to announce the availability of new SharePoint Client-Side Object Model (CSOM) version targeted for the Office 365 or more specifically for SharePoint and Project Online. This release again contains updates on the existing SharePoint and Project CSOM assemblies. Notice that this update includes many new capabilities which are not yet available for preview in normal tenants. We will have separate announcements on the availability of different capabilities when they are released for preview usage.
You can find the latest CSOM package for SharePoint Online, including the Project Online CSOM assembly, from the NuGet gallery with an id of ‘Microsoft.SharePointOnline.CSOM‘. We are also working on updating the redistributable package at some point, but you can already right now start using some of these new capabilities in your solutions. We do recommend you to use the NuGet Package to gain access to the latest version, rather than downloading the SDK to your machine.
The version of the newly released CSOM package is 16.1.7115.1200. Previous versions of the NuGet have not been removed so that your existing solutions will continue working without issues and you can decide when the new version is taken into use. Notice that even though the NuGet version is increased to 16.1.7115.1200, actual assembly version of the released assemblies is 16.1.0.0. You can also check the version of the assemblies from the File Version attribute, which aligns with the NuGet version.
SharePoint Online Management Shell has been also updated to match with this CSOM release. You can find a new set of cmdlets listed in this article. Notice that many of the new cmdlets do NOT work in the normal Office 365 tenants until the corresponding capability has been released.
Notice that since this NuGet package is targeted to SharePoint Online, you cannot use it directly in on-premises environments (SharePoint 2013 or 2016). This is because of the server side dependencies of the APIs. CSOM versioning model and dependency to your target environment are clarified in following blog post – Using correct Client-Side Object Model (CSOM) version for SharePoint customizations. We have released separate NuGet packages for on-premises. See following blog post for additional details – SharePoint CSOM versions for on-premises released as NuGet packages.
New properties and methods across assemblies
Here’s a raw list of all the changes in the classes, properties and methods within this package.
Microsoft.SharePoint.Client
Following properties, classes and methods have been added.
- public property Microsoft.SharePoint.Client.CopyMigrationOptions.AllowSchemaMismatch
- public property Microsoft.SharePoint.Client.CustomerKeyStatusInfo.RecoveryEnabled
- public method Microsoft.SharePoint.Client.Folder.GetChanges
- public method Microsoft.SharePoint.Client.List.SyncFlowInstance
- public enum value Microsoft.SharePoint.Client.ListTemplateType.PromotedLinks
- public property Microsoft.SharePoint.Client.ObjectSharingInformationUser.HasReviewPermission
- public enum value Microsoft.SharePoint.Client.RoleType.Reviewer
- public method Microsoft.SharePoint.Client.Site.GetUrlById
- public method Microsoft.SharePoint.Client.Web.DefaultDocumentLibraryUrl
- public property Microsoft.SharePoint.Client.Web.TenantAppCatalog
- public property Microsoft.SharePoint.Client.View.CustomFormatter
- public method Microsoft.SharePoint.Client.Utilities.UrlUtility.IsValidAbsoluteWebUrl
- public class Microsoft.SharePoint.Marketplace.CorporateCuratedGallery.SiteCollectionAppCatalogAllowedCollection
- public class Microsoft.SharePoint.Marketplace.CorporateCuratedGallery.SiteCollectionAppCatalogAllowedItem
- public class Microsoft.SharePoint.Marketplace.CorporateCuratedGallery.TenantCorporateCatalogAccessor
Microsoft.Online.SharePoint.Client.Tenant
Following properties, classes and methods have been added.
- public class Microsoft.Online.SharePoint.TenantAdministration.HubSiteProperties
- public class Microsoft.Online.SharePoint.TenantAdministration.HubSitePropertiesPropertyNames
- public property Microsoft.Online.SharePoint.TenantAdministration.SiteProperties.HasHolds
- public property Microsoft.Online.SharePoint.TenantAdministration.SiteProperties.OwnerEmail
- public enum Microsoft.Online.SharePoint.TenantAdministration.SPOHubSiteUserRights
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.ConnectSiteToHubSite
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.CreateSiteDesign
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.CreateSiteScript
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.DeleteSiteDesign
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.DeleteSiteScript
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.DisconnectSiteFromHubSite
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetHubSitePropertiesById
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetHubSitePropertiesByUrl
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetHubSitesProperties
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetSiteDesign
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetSiteDesignRights
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetSiteDesigns
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetSiteScript
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GrantHubSiteRights
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.GrantSiteDesignRights
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.RegisterHubSite
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.RevokeHubSiteRights
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.RevokeSiteDesignRights
- public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.UnregisterHubSite
- public class Microsoft.Online.SharePoint.TenantAdministration.TenantSiteDesign
- public class Microsoft.Online.SharePoint.TenantAdministration.TenantSiteDesignCreationInfo
- public class Microsoft.Online.SharePoint.TenantAdministration.TenantSiteDesignPrincipal
- public enum Microsoft.Online.SharePoint.TenantAdministration.TenantSiteDesignPrincipalRights
- public class Microsoft.Online.SharePoint.TenantAdministration.TenantSiteScript
- public class Microsoft.Online.SharePoint.TenantAdministration.TenantSiteScriptCreationInfo
New PowerShell cmdlets in SharePoint Online Management Shell release
Following cmdlets have been added to the latest release of SPO Managment Shell. Notice that many of the below commands do NOT work in normal tenants until the capability is truly released and enabled. There will be separate communications around availability fo the new capabilities when they are released.
- Add-SPOSiteCollectionAppCatalog
- Add-SPOSiteDesign
- Add-SPOSiteScript
- Approve-SPOTenantServicePrincipalPermissionRequest
- Connect-SPOHubSite
- Deny-SPOTenantServicePrincipalPermissionRequest
- Disable-SPOTenantServicePrincipal
- Disconnect-SPOHubSite
- Enable-SPOTenantServicePrincipal
- Get-SPOCrossGeoMoveReport
- Get-SPOHubSite
- Get-SPOSiteDesign
- Get-SPOSiteDesignRights
- Get-SPOSiteScript
- Get-SPOTenantServicePrincipalPermissionGrants
- Get-SPOTenantServicePrincipalPermissionRequests
- Grant-SPOHubSiteRights
- Grant-SPOSiteDesignRights
- Register-SPOHubSite
- Remove-SPOSiteCollectionAppCatalog
- Remove-SPOSiteCollectionAppCatalogById
- Remove-SPOSiteDesign
- Remove-SPOSiteScript
- Revoke-SPOHubSiteRights
- Revoke-SPOSiteDesignRights
- Revoke-SPOTenantServicePrincipalPermission
- Set-SPOHubSite
- Unregister-SPOHubSite
“Sharing is caring”
Vesa Juvonen, Senior Program Manager, OneDrive-SharePoint Engineering, Microsoft – 24th of November 2017