Table of Contents
The May 2026 Update for Automating Microsoft 365 with PowerShell
As is our normal practice, the Office 365 for IT Pros team has released the regular update for the Automating Microsoft 365 with PowerShell eBook in mid-month. This is update #23 for our PowerShell book. Current subscribers can download the latest PDF and EPUB files from Gumroad.com through their Gumroad account or by using the download link from their receipt. The paperback version of the book (available on an on-demand print basis from Amazon) has also been updated.
The Flexibility of PowerShell
As time progress, the value of understanding how to use the Microsoft Graph to interact with Microsoft 365 workloads increase. Over the last month, I was asked to do some weird and wonderful things. A tenant suspected that people were scheduling and attending single-user Teams meetings to appear busy. Adapting the code from an article describing how to report details of Teams meetings solved that problem (and as it turned out, people were doing what the company suspected). Another question involved a company that uses the calendars of shared mailboxes to schedule vehicles (for example, an engineer needs a car to visit a facility). The ask was to analyze the bookings for vehicles to understand if the fleet needed to be augmented or reduced. Well, a calendar is a calendar, and the script to analyze conference room bookings proved a great base for developing the script to analyze the use of company vehicles.
However, the script that gave me most pleasure was the one developed to help chapter authors for the Office 365 for IT Pros eBook keep on top of developments within Microsoft 365. We synchronize a Planner plan with messages posted in the Microsoft 365 admin center and assign each message to an author. The author then considers whether the change described in the message is something that affects the content of their chapter, and if so, makes the necessary adjustments to the text. It’s a simple system that has served us well for years.
The problem is that authors can overlook assigned tasks (to be honest, I have 52 open tasks at present), so we created a script to find and send a listing of open tasks to authors. The script executes as an Azure Automation runbook, and all authors receive an email detailing their open tasks every Saturday morning. Time will tell if this tactic reduces the number of open tasks, but things are looking up. I hope that the change reported in MC1282308 (16 April 2026) describing changes to message center headings won’t affect the synchronization process.
All of this proves that searching for existing code examples can pay big time before sitting down to write new code, even with the help of AI tools.
Updates to PowerShell Modules
In terms of new releases for major Microsoft 365 PowerShell modules, we’ve only seen an update for the Microsoft Teams module (to V7.7) in the last month. Microsoft said that they improved the performance of the Get-Team cmdlet and the claim appears to be accurate. I tend to use the Get-MgTeam cmdlet rather that Get-Team, but it’s good to see Microsoft paying attention to performance of a cmdlet that features in many scripts.
The SharePoint Online management module moved to version 16.0.27111.12000 to keep track of changes being made to SharePoint tenant settings. However, the SharePoint module remains focused on Windows PowerShell rather than PowerShell Core, which is disappointing.
Keep on Learning
When we split the content that became Automating Microsoft 365 with PowerShell from the “big” Office 365 for IT Pros eBook, I never anticipated that our PowerShell book would take a life of its own and stretch to more than 400 pages of content. With more information about using Graph APIs effectively becoming available all the time, who knows how big the book might become. On to version 24…

