Skip to content

Every 5 minutes

Summarise Microsoft 365 outage emails in Slack

Microsoft service-health emails become a short Slack post saying what is broken and who is affected.

Runs
Every 5 minutes
Apps
Outlook, Slack
AI
Yes, uses the built-in AI allowance
Access
Mail.ReadWrite; chat:write

Send this to your assistant

Create a ClickRuntime automation: every 5 minutes, check Outlook for new Microsoft 365 service health emails, summarise what's affected in two lines and post it to #it, then mark the email read.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

When Teams or Exchange has a problem, the first sign is usually a wave of messages to the IT person asking if it's just them. Microsoft sends service-health emails, but they are long, full of reference numbers, and land in one admin's inbox.

A two-line summary in the IT channel lets everyone see the problem is known and roughly how bad it is, which cuts down the duplicate questions and the time spent troubleshooting something only Microsoft can fix.

What you get out of it

  • Fewer 'is it just me?' messages

    Once the outage is in the channel, people can see it for themselves. IT spends the time on real issues instead.

  • Plain language

    The summary says which service is affected and what users will notice. Nobody has to read through Microsoft's long incident format.

  • No missed notices

    The alert reaches the whole IT channel, not just the one admin who happens to get the email. Holidays and sick days no longer leave a gap.

  • Inbox stays tidy

    Each notice is marked read once posted. The admin's inbox doesn't fill with service-health mail.

How it works

What happens, step by step

  1. Every 5 minutes it checks Outlook for unread emails from Microsoft's service-health address.

  2. AI reads each one and writes a two-line summary of what is affected and the likely impact.

  3. The summary is posted to your IT channel in Slack.

  4. The email is marked read, so it won't be posted again.

Before it runs live

  • Connect Outlook
  • Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)

What you get

RunsEvery 5 minutes
Summarise Microsoft 365 outage emails in Slacktoday, 9:00Succeeded
Slack · #it:rotating_light: Exchange Online: some users can't send mail from Outlook on the web. Desktop Outlook is unaffected.

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Google Sheets
  • Combine it with other Outlook and Slack steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
microsoft_365_outage_emails_summarised_in_slack.pyexample
GRAPH = "https://graph.microsoft.com/v1.0"
from clickruntime import on_trigger, credentials, http, notify, ai, report_fetched

SENDER = "o365mc@microsoft.com"

@on_trigger
def run(event):
    h = {"Authorization": f"Bearer {credentials.connection('microsoft', 'work')}"}
    q = f"from/emailAddress/address eq '{SENDER}' and isRead eq false"
    msgs = http.get(f"{GRAPH}/me/messages", headers=h,
                    params={"$filter": q, "$select": "id,subject,bodyPreview", "$top": 10}).json()["value"]
    report_fetched(len(msgs))
    if not msgs:
        return {"summary": "Nothing new"}
    for m in msgs:
        text = ai.generate(f"Subject: {m['subject']}\n{m['bodyPreview'][:1500]}",
                           system="Summarise this Microsoft 365 service notice in two short lines: what is affected, and the user impact.",
                           max_output_tokens=120).text.strip()
        notify.slack(f":rotating_light: {text}", channel="#it")
        http.patch(f"{GRAPH}/me/messages/{m['id']}", headers=h, json={"isRead": True})
    return {"posted": len(msgs)}

FAQ

Common questions

Which emails does it pick up?
Messages from Microsoft's service-health sender address, or any sender and subject you specify. Other mail is left alone.
Will it post updates to the same incident?
Yes. Microsoft sends follow-up emails as an incident progresses, and each one gets its own short post so the channel shows the timeline.
Can it tag someone for major outages?
Yes. You can ask for a mention when the summary says the impact is high, such as mail flow being down for everyone.
What permissions does it need?
Mail.ReadWrite; chat:write. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Summarise Microsoft 365 outage emails in Slack” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.