Office 365 Service Health using Office 365 Service Communications API

A template to monitor Office 365 Service Health Status using Office 365 Service Communications API and Azure Application for authentication.

Results will display as below



Configure an Azure application to authenticate your tenant to the API

Follow the steps in the below link

Configure SAM to use Microsoft Graph API for Office-365 related templates

in addition to the above, ensure you add these permissions for the Office 365 Management API


In SolarWinds add credentials for your Azure Application

Username:           Client ID

Password:            Client Secret

The Tenant ID will be passed to the script via the arguments field

In the component monitor, make sure you add the Office 365 service you want to monitor and your tenant ID to the arguments field.

The script is the same for each Office 365 service so only this needs to be changed if adding additional services


I display this on my dashboard by adding a custom table widget with the settings below.

So far this is the best way I have found to display the information, although I am fairly new to SolarWinds


Hope this helps people as I couldn't find much info on retrieving service health information

Thanks to jvb as I used and modified the api authentication methods from their Microsoft Office 365 Teams template

  • After running the script manually, we were able to determine that the line 'if ($Status.status -match "PIRPublished") {$Stat = 7}' was the issue.  It seem Microsoft has updated this status to 'PostIncidentReviewPublished' instead.  Once we updated that, then we were able to get a correct status reading.  Also, some of the items are outdated (OSub, DynamicCRM).  We saw that no status would show on them, but after reviewing our O365 admin center health page, we noticed those were not there.  This module might need some minor updating.  But thanks for it nevertheless!

  • This is actually the error I'm getting as well.  Supposedly due to a missing powershell extension but haven't been able to test this.  Anyone else get past this?

  • I also see the below error on APM logs

    ERROR SolarWinds.APM.Probes.PowerShellProbe - Parse script output log:
    Scripting Error: Script does not contain the expected parameters or is improperly formatted. 'Statistic' missing.

  • I am having issue while testing this template from console. It is giving me below error.

    Errors: ==============================================
    Exception was caught: The operation has timed out
    Exception was caught: Unable to connect to the remote server
    Exception was caught: Unable to connect to the remote server

    When i tested the script from the server it is connecting and gives me some output , but from console i keep getting the same error.

    i created a external node point to the office portal. what am i doing wrong ?? someone please advice