You can now report on usage of different Microsoft Apps in Graph
I’ve just noticed that 3 new API endpoints have been made available in the Graph /beta endpoint, thanks to the Changelog:
These endpoints let you query a period of time and provide information about how many users have been using each type of application, across the Microsoft 365 tenant.
These are Microsoft 365 apps, not Teams apps, and include:
- Outlook
- Word
- Excel
- PowerPoint
- OneNote
- Teams
The getM365AppUserCounts call provides high level usage numbers for each of these apps. The getM365AppUserDetail call breaks down each application into: overall, Windows, Mac, Mobile and Web. It also groups usage by user with a “last activation date” and “last activity date”, meaning you can tell exactly who has been using which apps when.
Finally, the getM365AppPlatformUserCounts call aggregates all users and apps but groups by platform: Windows, Mac, Mobile & Web.
For all 3 calls, data is delivered via CSV file – the response to the API being a 302 with a pre-authenticated URL to the CSV. You can also choose to have the data delivered in JSON format by modifying the $format query parameter.
The permissions required for these reports is the same as for the other endpoints in /reports – Reports.Read.All (either Delegated or Application).
This is useful information information for anyone looking to track app usage over time, perhaps for user adoption purposes, or to track to effectiveness of Microsoft 365 training.