Below you will find pages that utilize the taxonomy term “SharePoint”
posts
Fixing SPFx: Unable to Use the Latest Version in scaffolding project
Introduction The SharePoint Framework (SPFx) 1.20.0 has been generally available since September 2024. However, if you work with SPFx, you might encounter issues when trying to use the latest version. SPFx still requires Node.js 18.x.x. In this blog post, I’ll walk you through the steps I took to install Node.js 18.20.4 using NVM, install the SPFx toolchain, and troubleshoot an issue where the project scaffolding defaulted to an older version of SPFx.
posts
Manage 'Everyone' and 'Everyone except external users' claim within a SharePoint site using PowerShell
Introduction As part of Microsoft 365 Copilot readiness, you may want to find where “Everyone and “Everyone except external users” claims are granted permissions which is a cause of oversharing. This blog post will guide you through using PowerShell to manage and audit the “Everyone” and “Everyone except external users” claims within your SharePoint site collection.
For more insights on why the “Everyone except external users” group is riskier than “People in your organization,” refer to Copilot for Microsoft 365 Data Ready – Where “Everyone except external users” group is more risky than “People in your organization” links!
posts
SharePoint - working round restore a library link missing
Introduction Have you ever encountered the frustrating situation where the Restore a library link in SharePoint is missing or inconsistently available? This can be a significant issue when you need to restore a library urgently.
The Problem Typically, you would expect to see the link ‘Restore This Library’ in the SharePoint interface: Restore library
However, in some cases, this link might be missing:
Restore Library Missing
The Workaround After some investigation, I discovered a workaround.
posts
Power Automate - Trigger a Flow from multiple Libraries and sites
Introduction In this blog post, we’ll explore how to trigger a single Power Automate flow from multiple SharePoint libraries and sites. This approach is particularly useful for scenarios where you need to standardize workflows across different document libraries and sites. It will avoid the need replicating the flows multiple times which may be harder to maintain and deploy.
The For a selected file action is used to achieve this. I have tried the Manually trigger a flowin vain as the context (site URL, library ID/name, and item ID) is not passed to the flow.
posts
SharePoint Search for Documents: Modified Date and Title of Results
Introduction Have you ever encountered a situation where the search results in SharePoint show incorrect document titles and modified dates? This can be frustrating, especially when you rely on accurate metadata for document management. In this blog post, we’ll explore why this happens and how to resolve it.
Problem Statement A business user reported that the search results for a particular document displayed the wrong name and modified date. Upon investigation, we found that the title and modified date were being pulled from the document properties rather than the metadata shown in the SharePoint library.
posts
Enhanced Version Controls/Intelligent Versioning Trim with PowerShell
Microsoft has introduced Enhanced Version Controls, previously known as Intelligent Versioning, as part of its public preview in May 2024. This feature, detailed in the Microsoft 365 Roadmap 145802, aims to help administrators manage file versions more effectively, reducing storage costs by removing unnecessary versions.
Extract from the Roadmap
We are introducing new version controls that help tenant and site admins or document library owners reduce the storage footprint driven by low value file versions.
posts
Get SharePoint site sharing Settings with PowerShell
Managing sharing settings for SharePoint sites is crucial for maintaining a secure and well-governed environment. With the help of PowerShell, administrators can efficiently retrieve and manage these settings across their SharePoint Online tenant. This ensures that sensitive information is not overshared and that your organisation’s data remains secure.
Importance of Reviewing Sharing Settings Reviewing sharing settings is essential to prevent oversharing, which can lead to data breaches and unauthorized access to sensitive information.
posts
Empowering Secure Collaboration: Configuring SharePoint Tenant and Site Settings with PowerShell to prevent oversharing
Sharing lies at the heart of collaboration within SharePoint, facilitating seamless communication and teamwork. However, effective management of sharing settings is crucial to maintain data security and prevent unintended exposure. This is particularly important in light of tools like Copilot for M365.
An extract from Announcing SharePoint advanced management innovations for the AI and Copilot era
“With Copilot and AI, security has become a concern. Not because Copilot allows people to access anything more than they could previously; it just allows them to find information they have access to faster.
posts
Display instagram posts into SharePoint using Instagram Basic Display Independent Publisher Connector
How to Use the Instagram Basic Display Connector in Power Apps and Power Automate Instagram is a popular social media platform with over 1 billion monthly active users. It is a great platform for sharing photos and videos, and many businesses use it to promote their products and services. With the Instagram Basic Display (IndependentPublisher) connector, you can now easily retrieve data from Instagram accounts and use it in Power Apps and Power Automate.
posts
Optimizing PowerShell Scripts to check for unique permissions in SharePoint: REST API vs. Get-PnPListItem
When working with large SharePoint sites, checking for unique permissions can be a time-consuming task. This blog post explores methods to optimize PowerShell scripts for fetching property HasUniqueRoleAssignments to determine unique permissions, including using PnP PowerShell and the SharePoint REST API. We compare their performance and highlight the advantages and limitations of each approach.
Using PnP PowerShell PnP PowerShell provides an efficient way to interact with SharePoint Online and retrieve list items to check for unique permissions.
posts
Copy SharePoint list structure with data - ALM
If you have built Power Platform solutions using SharePoint as a datasource, you may want to export the list structure along with its data from the source environment (e.g., DEV) and deploy it across different environments such as Test, UAT, and PROD. Fortunately, the PnP Provisioning from PnP PowerShell provides this capability. Power Platform solutions can be deployed using pipelines after the SharePoint structure is deployed.
Export Structure and Data from SharePoint Lists PnP PowerShell makes this process straightforward with Get-PnPSiteTemplate:
posts
Power Automate : Move File bypassing locked issue using CreateCopyJobs endpoint
The SharePoint - Move file action can be used to move files, however the file can’t be moved if the file was accessed by the current Power Automate flow for any processing reslutng in a locked file error.
{ “status”: 400, “message”: “File ‘Shared Documents/Attendances/To Be Processed/Attendance -16072024.xlsx’ cannot be moved because it is in locked mode.\r\nclientRequestId: d6df7566-881f-4f14-8548-c5fac1eda46d\r\nserviceRequestId: 606841a1-40f0-9000-9c69-507df9b21720” }
Handling Locked Files There are two options to handlelocked files when using SharePoint - Move file action:
posts
Getting Storage Metrics for a SharePoint site
Gaining an overview of what takes up space in a SharePoint site is crucial for monitoring large files or a significant number of versions.
Unfortunately, the storage metrics link, <siteurl>/_layouts/15/storman.aspx, won’t work for libraries with more than 5,000 files without nested folders. While this might go against information architecture principles, creating folders is an option to avoid the list view threshold error.
Here’s a PowerShell script to help you get storage metrics for your SharePoint site:
posts
SharePoint Highlighted Content Web Part versus News Web Part: Author versus Editor
The Highlighted Content Web Part and the News Web Part in SharePoint can be used to display news on a page. Both webparts serve different purposes and have distinct features. One particular difference is the display of author in News Webpart and display of editor in the Highlighted Content Web Part.
The Highlighted Content Web Part displays editing details like editor and last updated date with the news information. Unfortunately there is no option to change it to the author name.
posts
Power Automate: Create and Publish a News Link
This post covers how to leverage SharePoint REST API to create and publish a news link from Power Automate using the Send an Http request to SharePoint action.
Within a Power Automate flow follow the steps below to create and publish a news link details.
Send an Http request to SharePoint action renamed to Get Page Details. Site Address : site url Method : GET Uri : /_api/web/lists/GetByTitle(‘Site%20Pages’)/items(10) Parse JSON renamed to Parse Page Details JSON Add the action Parse JSON and refer to the content from previous steps
posts
Power Automate: Retrieve User Details
This post covers how to leverage SharePoint REST API to get user details from Power Automate using the Send an Http request to SharePoint action.
Within a Power Automate flow follow the steps below to retrieve a user details.
Send an Http request to SharePoint action renamed to Get Page Author Details Site Address: https://test.sharepoint.com Method: GET URI: _api/Web/GetUserById(14) Here’s the output from the API:
Here’s the output from the API:
posts
Power Automate: Retrieve Users from a SharePoint Group
This post covers how to leverage SharePoint REST API to get users from a SharePoint group from Power Automate using the Send an Http request to SharePoint action. In the example below a SharePoint Group has been defined for approvers of a particular process and needed to be retrieved to be assigned an approval task.
Within a Power Automate flow follow the steps below to retrieve users from a SharePoint group.
posts
Oversight of Sharing Information in SharePoint sites using PowerShell with CSOM, REST and PnP PowerShell
Effective oversight of sharing links and sharing information are paramount to ensuring data security, compliance, and optimal collaboration experiences.
As organisations migrate to M365 environments, they inherit powerful collaboration tools that facilitate seamless sharing of documents and resources. However, without proper governance, these capabilities can lead to unintended consequences such as data breaches, compliance violations, and loss of intellectual property.
Sharing is a powerful feature for collaboration. However depending on how items, files or folders are shared, a sharing link might be created or unique permissions on these items are created.
posts
Power Automate : Update Author and Editor of a Page
This post outlines how to use Power Automate to update author and editor of a Page within SharePoint using the Send an Http request to SharePoint action.
Within a Power Automate flow, follow the following steps
Add Send an Http request to SharePoint renamed to Update Author Properties Property Value Site Address The SharePoint site URL Method POST Uri See Uri below Headers See Headers table below Body See Body below Uri _api/web/lists/GetByTitle(‘Site%20Pages’)/items(1)/ValidateUpdateListItem()`
posts
SharePoint Portals Site collections Inventory
As part of the Copilot for M365 rollout , questions were raised on the /portals/Community and /portals/hub as both ‘Everyone Except External Users’ was granted access raising concerns on the content on the site. These are legacy sites and are currently inaccessible. Historically, these sites were accessible via the legacy SharePoint admin centre, however, they are not available through the modern SharePoint admin centre interface.
Thanks to Gregory Zelfond’s blog post What are all these site collections in SharePoint?
posts
SharePoint Storage Monitoring Against Allocated Quota using PowerShell
There is limited space allocated to the tenant. To ensure business continuity and smooth ongoing operation, it is imperative to keep an eye on its usage and take relevant actions suited to the circumstances. By default a SharePoint site is allocated 25 TB by default and OneDrive for Business site is allocated 1 TB by default. These settings can be amended manually to a different quota to control SharePoint site. The script will help to proactively monitor percent used against quota for each SharePoint site.
posts
Exclude News Links from News WebPart in SharePoint Online
SharePoint Online offers the useful feature of news links to avoid duplication of news articles and promote existing posts across different sites. This is especially beneficial when news creation is enabled for various departments or directorates, allowing them to share significant news organization-wide.
However, the News WebPart might display both the news links and the original articles, resulting in duplicated content.
To manage this, you can utilize the OriginalSourceUrl column, which stores the link to the source news article.
posts
Update Choice values of List Items in SharePoint List
Maintaining up-to-date list items, especially when dealing with choice fields, can be a daunting task sepcially after choice field values are updated. We need a way to update these old values to the correct new ones.
The Challenge SharePoint lists use choice fields to categorise items. Over time, the need to update these choice values can arise, whether due to changes in terminology, business processes, or error correction. Manually updating these values across numerous list items is not only time-consuming but also prone to human error.
posts
Overcoming SharePoint's List View Threshold with CAML Queries in PowerShell
Overcoming SharePoint’s List View Threshold with CAML Queries in PowerShell Encountering the list view threshold error in SharePoint when dealing with lists exceeding 5,000 items is a common challenge. Using CAML queries within PowerShell scripts offers a server-side solution to efficiently filter and retrieve data, yet is prone to the list view threshold error.
Sample script This is the sample PowerShell script querying the specified SharePoint list using CAML query.
posts
Find orphaned choice values in SharePoint list/libraries using PowerShell
Find orphaned choice values in SharePoint list/libraries using PowerShell One common issue is orphaned choice values in SharePoint lists which may affect subsequent update to the list item. This can occur when list items contain values that are no longer valid according to the list’s choice field values. This post covers a PowerShell script to identify these orphaned choice values in SharePoint lists to either update them or add them back to the list of choice field values.
posts
Updating SharePoint Site Logo and Thumbnail with PowerShell
Update SharePoint Site Logo and Thumbnail with PowerShell In SharePoint Online sites, the distinction between the Site Logo and Site Thumbnail is crucial. The site logo appears in the site header, while the site thumbnail is used in search results, site cards, file copying/moving, and other areas.
Both site logo and thumbnail are part of SharePoint branding. This post covers how to update the site logo and thumbnail across multiple SharePoint sites within a hub using PowerShell.
posts
Update Content Type of List Items in SharePoint List
Update Content Type of List Items in SharePoint List A content type in SharePoint is a reusable collection of metadata (columns) allowing to organise, manage and handle content in a consistent way. If the content type of files and items need to be updated because of required changes how particular content have to be managed, it can be a daunting laborious task if done manually. PowerShell can help automating the update of content types and corresponding metadata (columns).
posts
Importing Dates and Numbers from Excel file into SharePoint list with Power Automate
Importing Dates and Numbers from Excel file into SharePoint list with Power Automate Transferring data from Excel to SharePoint lists can encounter format issues, especially with datetime and number fields. This post covers solutions to some challenges particularly related to dates and numbers.
The flow is quite simple with an action to read contents from excel file and an action to create items into a sharepoint list.
Handling DateTime Fields When importing datetime data with the “List rows present in a table” action from the “Excel Online for Business” connector, you might encounter format related errors.
posts
Power Automate updating multi line field with more than 255 characters
Power Automate flow succeeded despite failure to update multi line text field within a SharePoint Library Updating multi-line text fields in a SharePoint Library from Power Automate flows, especially when the content exceeds 255 characters might fail if the field is not updated to allow unlimited length. This can cause workflows to fail silently.
In a recent scenario, an action was added to a Power Automate flow to update a SharePoint Library’s multi-line text field named ‘ErrorLog’ with error details captured during the flow’s execution.
posts
Publishing Major Versions of Files in SharePoint with Power Automate
Publishing Major Versions of Files in SharePoint with Power Automate This post covers how to publish major versions for Office documents (Word, Excel, or PowerPoint) in SharePoint using Power Automate, especially after an approval task using the checkin and publish REST endpoints. This applies to libraries having minor versions enabled
Just for context, a Power Automate approval flow with trigger for a selected file needed publishing for the selected file as major version after being approved.
posts
Column Validation for Sort Code and Account Number in SharePoint
Column Validation for Sort Code and Account Number in SharePoint Column validation provides a solution to validate data for data integrity. This post covers column validation for Sort Code and Account Number in SharePoint.
Validation for Sort Code =AND(LEN([Sort Code])=6,ISNUMBER([Sort Code]+0))
The above formula checks
The length of the sort code must be exactly 6 digits. The sort code must be a number. Validation for Account Number =AND(LEN([Account Number])=8,ISNUMBER([Account Number]+0))
posts
Streamlining SharePoint Template Usage: A Guide to Opening DOTX Files as DOCX
Streamlining SharePoint Template Usage: A Guide to Opening DOTX Files as DOCX Encountering issues with opening “.dotx” templates in SharePoint is a common scenario that can disrupt your workflow. Typically, when you attempt to open a “.dotx” file in SharePoint, it opens in edit mode for the template itself, rather than generating a new “.docx” document as expected. This behavior diverges from the experience in Windows File Explorer and can hinder productivity.
posts
Empowering Secure Collaboration: Configuring OneDrive Tenant and Site Settings
Empowering Secure Collaboration: Configuring OneDrive Tenant Settings with PowerShell OneDrive makes it easy to collaborate by sharing files and folders with others. OneDrive is the storage space for personal productivity and not meant for collaboration. Data stored within OneDrive are
Files shared to chats within Teams Files shared with end user by other OneDrive users. OneNote Personal lists and Document storage Shortcuts to SharePoint sites/libraries Favourites Loops within chats Streams In this article, we’ll explore into how PowerShell can empower SharePoint administrators to configure OneDrive sharing settings proactively at the tenant level, addressing oversharing concerns for the Copilot for M365 rollout.
posts
Counting Files and folders within SharePoint Libraries using PnP PowerShell
Counting Files and Folders within SharePoint Libraries using PnP PowerShell This post shows a PowerShell script using PnP PowerShell module to count the number of files and folders within a SharePoint library. It might be useful doing an inventory of file count.
$SiteURL = "Counting Files within a SharePoint Library using PnP PowerShell" # Generate a unique log file name using today's date $dateTime = (Get-Date).toString("dd-MM-yyyy") $invocation = (Get-Variable MyInvocation).Value $directorypath = Split-Path $invocation.
posts
Retrieving File Count and Size of a folder using PnP PowerShell
Retrieving File Count and Size of a folder within a SharePoint Library using PnP PowerShell This post covers a PowerShell script that uses the PnP PowerShell module to retrieve the file count and total size of a specific folder within a SharePoint library.
#Parameters $SiteURL = "https://contoso.sharepoint.com/sites/company311" $FolderSiteRelativeURL = "Shared Documents/Test1" #Connect to PnP Online Connect-PnPOnline -Url $SiteURL -Interactive #Get the folder $Folder = Get-PnPFolder -Url $FolderSiteRelativeURL -Includes ListItemAllFields #Get the total Size of the folder - with versions Write-host "Size of the Folder:" $([Math]::Round(($Folder.
posts
Empowering Secure Collaboration: Configuring Microsoft Loop Sharing Tenant and Site Settings with PowerShell
Empowering Secure Collaboration: Configuring Microsoft Loop Sharing SharePoint Tenant and Site Settings with PowerShell Guest users can be invited to collaborate within Microsoft Loop in the tenant. Refer How to work with guest users using Microsoft Loop how sharing within Loop works.
This post focuses on using PowerShell to control the Microsoft Loop sharing settings to help securing data especially with Copilot for M365 which can expose data not previously accessible by other means.
posts
Sharing Options Updates - Send Email Button Greyed Out
Sharing Options Updates - Send Email button greyed out Starting from March 2024, there has been a notable change in SharePoint’s sharing options. If a user is not allowed to share on a SharePoint site (for instance, when a user is a member and only owners have sharing privileges), the Send Email button appears greyed out. Additionally, a warning message is displayed: Sharing is limited on this item. You can only copy links for people who have existing access, and you can’t invite anyone new.
posts
PowerShell Script to Query Unique Permissions in SharePoint
Query Unique Permissions in SharePoint using CSOM and PnP PowerShell Managing permissions in SharePoint is a critical aspect of maintaining data security and compliance within organisations. However, as SharePoint environments grow in complexity, manually auditing and managing permissions becomes increasingly challenging. To address this challenge, PowerShell scripts can be leveraged to automate the auditing process, providing administrators with valuable insights into permission structures across SharePoint sites and libraries.
What do SharePoint permissions have to do with Copilot for Microsoft 365?
posts
Retrieving SharePoint Site URL for Teams Channels
Retrieving SharePoint Site URL for Teams Channels Have you ever needed to construct the SharePoint site URL for a private or shared channel using just the channel name? This post will guide you through the process.
Private Channels The default SharePoint URL for a private channel follows the format: <ParentSharePointSiteUrl><ChannelRelativeUrl>. Note that if the channel is renamed, the corresponding SharePoint URL remains unchanged.
Shared Channels Similarly, the default SharePoint URL for a shared channel follows the format: <ParentM365GroupName><ChannelRelativeUrl>.
posts
Troubleshooting NVM Setup Issues for SPFx Development
Troubleshooting NVM Setup Issues for SPFx Development I have not used my dev machine for SPFx development for over a year. Before diving into any new SPFx development, I followed the typical procedure of installing the latest Node.js version 18.19.0 supported by the current SPFx version (1.18.2) using nvm (node version management).nvm allows to maintain different development environment.
nvm install 18.19.0 Following this, I proceeded to install the SPFx toolchain:
posts
Get Folder Item properties using PnP PowerShell : Get-PnPFolderItem versus Get-PnPListItem
Get Folder Item properties using PnP PowerShell : Get-PnPFolderItem versus Get-PnPListItem Introduction In this blog post, we will explore an alternative approach to retrieving folder item properties using PnP PowerShell. We will discuss the limitations of the Get-PnPFolderItem cmdlet and demonstrate how to use Get-PnPListItem to overcome those limitations.
The Limitations of Get-PnPFolderItem The Get-PnPFolderItem cmdlet is not suitable for working with large libraries. When attempting to retrieve items from a large library, you may encounter the following error message:
posts
Automating Site Reindexing with PowerShell
Automating Site Reindexing with PowerShell Introduction Keeping your SharePoint environment up-to-date is crucial, especially after making schema changes. One important aspect of maintaining accurate and relevant search results is to regularly reindex sites, libraries, or lists. In this blog post, we will explore a streamlined approach using PnP PowerShell to automate the reindexing process. By leveraging this script, you can ensure that your search results reflect the latest changes in your SharePoint environment.
posts
PowerShell: Set and Remove SharePoint Site Thumbnail Logo
For many organizations, maintaining a consistent brand identity across SharePoint sites is crucial. The distinction between “Site Logo” and “Site Logo Thumbnail” is essential, as they serve different purposes across SharePoint and the Microsoft 365 ecosystem. The site logo appears in the site header, while the site logo thumbnail is used in search results, site cards, when copying/moving files, and other critical areas. It plays a vital role in helping end users differentiate between various SharePoint Online (SPO) sites and Teams.
posts
Unveiling Audit Logs with PnP and Cli for M365 PowerShell
Unveiling Audit Logs with PnP PowerShell for the last 7 days Understanding and tracking activities within your M365 environment is crucial for maintaining security and compliance. Audit Logs offer a wealth of information, and in this post, we’ll delve into the methods to retrieve and analyze them. Specifically, we’ll focus on leveraging the Office 365 Management Activity API reference through the Get-PnPUnifiedAuditLog PnP PowerShell cmdlet. It is a great alternative if you are only a SharePoint Administrator with no global admin or Purview Audit logs access.
posts
Recreating Deleted Owners Group for M365-Connected SharePoint Sites
Recreating Deleted Owners Group for M365-Connected SharePoint Sites If out-of-the-box (OOB) groups such as owners, members, or visitors have been deleted accidentally from your SharePoint site, this article may assist you in recovering those vanished groups specifically for M365 linked Team site. I recently encountered a distress call from an end user facing data access issues on a SharePoint Team site. To my dismay, I discovered that the SharePoint Owners group had been accidentally deleted, prompting me to seek and implement a solution to restore access.
posts
Updating Approval Details in SharePoint Library using 'Send HTTP Request to SharePoint' in Power Automate
Updating Approval Details in SharePoint Library using ‘Send HTTP Request to SharePoint’ in Power Automate In Power Automate, there are two methods for updating file properties:
Send HTTP Request to SharePoint Update File Properties While the latter suffices for most cases, I opted for the “Send HTTP Request to SharePoint” in specific scenarios:
To avoid triggering a new file version using system update. When modifying system columns such as author or modified date.
posts
Leveraging ChatGPT to Generate Test Data for SharePoint Lists Using PnP PowerShell
Leveraging ChatGPT to Generate Test Data for SharePoint Lists Using PnP PowerShell Utilizing ChatGPT to generate test data for various applications is a powerful capability. After stumbling upon the sample script Create test users using MS Graph API from list or ask ChatGPT to generate test users by Valeras Narbutas on creating test users with MS Graph API, I decided to explore using ChatGPT to generate a list of data. This script harnesses OpenAI’s ChatGPT model to effortlessly generate a list of wellbeing activities.
posts
Optimising Large List Updates with PnP Batch: Handling Throttling and Enhancing Efficiency
Optimising Large List Updates with PnP Batch: Handling Throttling and Enhancing Efficiency In this article, we explore how to efficiently update a large SharePoint list containing approximately 60,000 items using PnP-Batch. Updating such a substantial number of items individually can be time-consuming and prone to throttling issues. Prior to using PnP Batch , it was taking more than 12 hours to update 60k one by one. The article highlights the benefits of using PnP Batch, which significantly reduces the time taken for updates by sending fewer requests.
posts
Troubleshooting SharePoint Storage Reports with PowerShell
Troubleshooting SharePoint Storage Reports with PowerShell As the amount of data stored in SharePoint grows, it becomes important to monitor and manage storage usage. In this blog post, we will explore how to generate storage reports for SharePoint sites using PowerShell. These reports will provide insights into the storage usage of sites and individual files, including file versions and the size of the recycle bin. However the reports can only give a glimpse of at least 60-90% of storage.