Extract prior 30 days of meeting information for all rooms at a site (O365)

I was asked to provide meeting information for about 150 rooms at our HQ site (at least the room, organizer, and meeting date/time) for the past 30 days. I am able to use Get-Mailbox (Get-EXOMailbox) to assign the room objects to a variable, but I have been unable to find a way to extract the meeting information using any methods or properties I can find. So far, I have seen and been provided with several recommendations. The first was to use Get-MessageTrace and parse the messages to get the events, but there wouldn’t be actual event information, only subject, sender, and date/time sent. Another was to use Outlook scripting via COM (New-Object), which isn’t ideal because my admin account doesn’t have a mail file and can’t leverage Outlook. The last option I found was to use the Graph API, which I’d love to do, but I haven’t been able to find any documentation that explain how to authenticate as my admin account using Modern Authentication. The only examples I can find for using PowerShell to access the Graph API seem to require an application to be created and registered, and I don’t have (or am not familiar with) the access to set that up. As a developer with over 20 years of experience working in the world of calendaring and email, it seemed like an easy request, but I have asked a few resources for help and even though the initial responses have been “I’ve had someone get this information for me before, so it there must be a way to do it!”, after actually trying to provide something, everyone I have talked to has indicated that there is not a simple solution. Any solutions, advice, or even some direction would be greatly appreciated!

Have you tried any of the Get-CalendarProcessing or Get-MailboxCalendarFolder ? I dont have access to Exchange to play around, just thinking out loud :slight_smile:

Thanks for your response! I took a look to see if I could use one of those cmdlets to get entry detail from the rooms, but I was not able to find anything other than general object-level settings and behaviors. I think that even though using the Graph API is going to require a bit of a learning curve, in the end it is going to get me what I need, as well as set me up to surface a great deal of other similar information in the future.