Category Archives: Graph

Get-O365UsageReports: Use Graph to pull all Office 365 Usage Reports to Excel

In December 2017, the new Microsoft Graph reporting APIs were announced:, also in this announcement was the deprecation of the Office 365 Reporting Web Service: ConnectionbyClientType ConnectionbyClientTypeDetail CsActiveUser CsAVConferenceTime CsP2PAVTime CsConference CsP2PSession GroupActivity MailboxActivity GroupActivity MailboxUsage MailboxUsageDetail StaleMailbox StaleMailboxDetail) Details on working with the Office 365 Usage reports via v1.0 API in Microsoft Graph:… Read More »

Check-AzureServicePrincipals: Using Graph via PowerShell to determine if an Azure Service Principal is a Microsoft Known ID

While writing the Manage-AzureAppRegistration script (, I found some interesting problems setting Oauth2Permissions. My original code would lookup the Service Principal for an API to assist with determining the ID for the specific role I was adding. The problem quickly became apparent that not all Tenants had the same list of Microsoft Service Principals and… Read More »

Manage-AzureAppRegistration: Using Graph via PowerShell to create a native Azure app registration for PowerShell to access Graph

When accessing some of the Microsoft Graph API endpoints, you can get away with leveraging the well known Client ID reserved for PowerShell: “1950a258-227b-4e31-a9cf-717495945fc2”. Of course luck would have it, the few items I wanted to access (Microsoft Graph Reporting API and Office 365 Management Activity API) are not granted to the PowerShell Client ID.… Read More »