Exception Queue Setup Guide (Microsoft Teams)
Same as above for Teams.
Exception Queue Setup Guide (Microsoft Teams)
Microsoft Teams does not have a native "Exception Queue" feature. This guide shows you how to build a functional exception management system using Teams channels, Power Automate, and adaptive cards.
You'll create a dedicated channel for critical escalations, configure automated routing based on keywords and mentions, and set up notification workflows that ensure exceptions reach the right people within minutes.
What You Need Before Starting
Required access:
- Teams admin center access (teams.microsoft.com/admin)
- Power Automate license (included in most M365 Business plans)
- Owner or admin role in your target Team
Required decisions:
- Who monitors exceptions (specific people, not "the team")
- Response time SLA (recommend 15 minutes for critical, 2 hours for standard)
- Escalation path (who gets notified if no response in X minutes)
Step 1: Create the Exception Channel
- Open Teams and navigate to your operations or support Team.
- Click the three dots next to the Team name, select "Add channel".
- Name it "Exceptions" or "Critical Escalations" (avoid cute names).
- Set channel type to "Standard" (not Private - exceptions need visibility).
- In the description field, paste: "Critical issues requiring immediate response. SLA: [X] minutes. Monitored by: [Names]. Use @Exceptions to trigger alerts."
- Click "Add".
- Pin this channel to the top of your Team list (right-click channel > Pin).
Configure channel settings:
- Click the three dots next to the channel name, select "Manage channel".
- Under "Channel moderation", enable moderation if you want to control who can post (optional but recommended for high-volume teams).
- Under "Connectors", add the "Incoming Webhook" connector (you'll use this in Step 3).
- Copy the webhookURL and save it in a secure note - you'll need it later.webhookClick to read the full definition in our AI & Automation Glossary.
Step 2: Set Up Exception Monitoring Team
- In the Exceptions channel, click the "+" tab button.
- Add the "Tasks by Planner" app.
- Create a new plan called "Exception Queue [Month Year]".
- Create three buckets: "New", "In Progress", "Resolved".
- Assign the monitoring team as plan members.
Create the on-call rotation:
- In the channel, post a pinned message with the current on-call schedule.
- Format: "On-call this week: [Name] (primary), [Name] (backup). Response SLA: 15 min."
- Update this message weekly (set a recurring Outlook reminder).
Step 3: Build the Power Automate Workflow
Create the exception detection flow:
- Go to make.powerautomate.com and sign in.
- Click "Create" > "Automated cloud flow".
- Name it "Exception Queue Router".
- Search for and select the trigger "When a new channel message is added" (Microsoft Teams connector).
- Configure the trigger:
- Team: [Your Team name]
- Channel: Exceptions
- Click "New step" and add "Condition".
- Set condition: "Message" contains "@Exceptions" OR "Message" contains "URGENT" OR "Message" contains "CRITICAL".
Configure the "Yes" branch (exception detected):
- Add action "Post adaptive card in a chat or channel" (Teams connector).
- Select "Flow bot" as the poster.
- Post to: Channel
- Team: [Your Team]
- Channel: Exceptions
- Paste this adaptive card JSON:
{
"type": "AdaptiveCard",
"body": [
{
"type": "TextBlock",
"size": "Large",
"weight": "Bolder",
"text": "🚨 EXCEPTION DETECTED",
"color": "Attention"
},
{
"type": "TextBlock",
"text": "Posted by: @{triggerOutputs()?['body/from/user/displayName']}",
"wrap": true
},
{
"type": "TextBlock",
"text": "@{triggerOutputs()?['body/body/content']}",
"wrap": true
},
{
"type": "TextBlock",
"text": "Time: @{utcNow()}",
"isSubtle": true
}
],
"actions": [
{
"type": "Action.OpenUrl",
"title": "View Message",
"url": "@{triggerOutputs()?['body/messageLink']}"
}
],
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.4"
}
Add action "Create a task" (Planner connector).
Configure:
- Group Id: [Your Team's Group ID - find in Teams admin center]
- Plan Id: [Your Exception Queue plan ID]
- Title:
"Exception from @{triggerOutputs()?['body/from/user/displayName']}" - Bucket Id: [ID of your "New" bucket]
- Assignments: [User IDs of on-call team members]
Add action "Send an email" (Office 365 Outlook connector).
Configure:
- To: [On-call team email addresses, separated by semicolons]
- Subject: "EXCEPTION: Response required within 15 minutes"
- Body: Include message link, poster name, and timestamp
Click "Save" at the top.
Step 4: Configure Escalation Workflow
Create the escalation flow for unacknowledged exceptions:
- In Power Automate, create a new "Scheduled cloud flow".
- Name it "Exception Escalation Check".
- Set to run every 15 minutes during business hours.
- Add action "List tasks" (Planner connector).
- Filter to tasks in "New" bucket older than 15 minutes.
- Add "Apply to each" loop for filtered tasks.
- Inside loop, add "Send an email" to escalation contacts (partners, directors).
- Add "Update task details" to move task to "Escalated" bucket (create this bucket first).
Step 5: Test the System
Run these three tests:
Test 1: Basic exception trigger
- Post a message in the Exceptions channel: "URGENT: Client portal down for BigCorp @Exceptions"
- Verify within 60 seconds:
- Adaptive card appears in channel
- Planner task created in "New" bucket
- Email received by on-call team
- If any step fails, check Power Automate run history for errors.
Test 2: Task assignment and movement
- Open the Planner task created in Test 1.
- Assign it to yourself and move to "In Progress".
- Add a comment: "Investigating - will update in 10 min".
- Move to "Resolved" when done.
Test 3: Escalation trigger
- Create a test task in Planner, set created date to 20 minutes ago (you'll need to use Graph APIor do this manually by waiting).APIClick to read the full definition in our AI & Automation Glossary.
- Wait for the escalation flow to run (or trigger it manually).
- Verify escalation email sent to leadership.
Configure Exception Categories
Add message extensions for faster categorization:
- In the Exceptions channel, click "Format" under the message box.
- Create quick-reply templates using the "Saved replies" feature:
- "CRITICAL - System Down: [Description]"
- "URGENT - Client Escalation: [Client Name] - [Issue]"
- "STANDARD - Process Exception: [Process] - [Details]"
Set up tagging:
- In each exception message, use hashtags: #SystemDown, #ClientIssue, #ProcessError
- These become searchable and you can filter channel history by tag.
Monitoring and Reporting
Weekly exception review:
- Export Planner tasks to Excel (Planner > three dots > Export plan to Excel).
- Track these metrics:
- Total exceptions
- Average time to acknowledgment
- Average time to resolution
- Exceptions by category
- Repeat exceptions (same root cause)
Monthly leadership report template:
- Total exceptions: [Number]
- Met SLA: [Percentage]
- Top 3 exception types: [List with counts]
- Process improvements implemented: [List]
- Recommended actions: [Specific next steps]
Common Configuration Issues
Adaptive cards not posting:
- Verify the Flow bot has permission to post in the channel.
- Check that your adaptive card JSON is valid at adaptivecards.io/designer.
Emails not sending:
- Confirm the Office 365 Outlook connector is authenticated with an account that has send permissions.
- Check recipient email addresses are correct (no typos).
Planner tasks not creating:
- Verify the Group ID and Plan ID are correct (these are GUIDs, not names).
- Ensure the flow's connection has access to the Planner plan.
Escalation flow not triggering:
- Check the flow's run history - it may be running but finding no tasks to escalate.
- Verify the time filter logic (tasks older than X minutes).
Advanced Configuration
Add sentiment analysis:
- In Power Automate, add "Detect Sentiment" action (AI Builder) after the Teams trigger.
- Add condition: If sentiment score < 0.3 (negative), auto-escalate.
Integrate with ticketing systems:
- Add action "Create work item" (Azure DevOps) or equivalent for your system.
- Map exception details to ticket fields.
- Post ticket number back to Teams channel.
Create exception dashboard:
- Use Power BI connector to pull Planner data.
- Build real-time dashboard showing open exceptions, SLA compliance, trends.
- Share dashboard link in the Exceptions channel description.
This system handles 50-100 exceptions per week reliably. For higher volumes, consider adding a triage role that reviews all exceptions before assignment.

Reviewed by Revenue Institute
This guide is actively maintained and reviewed by the implementation experts at Revenue Institute. As the creators of The AI Workforce Playbook, we test and deploy these exact frameworks for professional services firms scaling without new headcount.
Revenue Institute
Need help turning this guide into reality? Revenue Institute builds and implements the AI workforce for professional services firms.