Office 365 license tracking dashboard


Still a work in progress so it’s pretty fugly. It’s going to be for our technical account managers to see which client licenses are coming up for renewal. First page shows licenses expiring, second page (not pictured) shows all licenses managed, and the third page lets the user select a client from the input and fetch current data straight from the client’s tenant.

This was intended as a proof of concept to see if I could, with zero web development knowledge, build a dashboard that could log into any of our 365/Azure clients and perform functions.



Nice work! O365 licensing is a pain, so I’m sure that wasn’t easy to build!



Working on a similar project, just getting started :slight_smile:
I have collected the license information in a grid, one page with all license packs, and numbers, and one for what type of contract it is within O365.


And an example on how to show the allerts for the active tenant selected(some fomatting to do):

And current servicestatus for the active tenant.

How did your dashboard turn out? Been a while since you started it :slight_smile:

1 Like


Looking good! I like the alerts. Mine is on hold for a while. Sales showed some interest but have forgotten about it now.

I’ve added downloadable Excel reports for each page and cleaned up a little. I’ve also added some secured pages, which took a while due to a problem on the Azure AD side. These will be for techs to do basic user and license administration from a single page rather than having to log into each tenant. I’ve gotten as far as pulling AD sync status similar to the ones you see on the tenant admin page. Work has picked up for me and I’ve got to start re-doing my Microsoft certs since they decide to retire most of the ones I have, but I hope to get back to this project soon.

1 Like


Oh nice! Do you have any sample code for the downloadable reports? That seems like a really cool and useful snippet!



I would assume he creates the Excel reports using the module: “ImportExcel” to create the report and then provide a link for this file. Really a usefull module :wink:



Yes, I do use that module. It’s one of my favorites and worth looking into if you do any sort of client-facing reporting.

Here’s the code:
##publish a folder in UD
$folder = Publish-UDFolder -Path ‘C:\PubFolder’ -RequestPath ‘/config’

##empty folder and create report
onClick = Get-ChildItem -Path C:\PubFolder\ -Include *.* -Recurse | foreach{_.Delete()};
$Cache:expSubs | Export-Excel ‘C:\PubFolder\ExpiringSubscriptions.xlsx’

##UD Element with hyperlink
New-UDColumn -Size 12 -Content{
New-UDCard -Title “Office 365 Subscriptions Expiring in 30 Days or Less”

        New-UDElement -Id 'print01' -Tag "a" -Attributes @{
            className = "$btnClass"
            onClick = $OnClick
            href = "" 
            target = "_self"
        } -Content {
            'Download Excel report'