Skip to main content

Triage incidents and enforce SLAs with Gemini, Groq, Google Sheets and Slack

Workflow preview

Workflow preview
100%
Triage incidents and enforce SLAs with Gemini, Groq, Google Sheets and Slack preview
Open on n8n.io

1. Workflow Overview

Reduce MTTR with context aware AI severity analysis and automated SLA enforcement Know that feeling when a "low priority" ticket turns into a production fire? Or when your on call rotation starts s...

Best for

  • Ticket Management automation workflows
  • AI Summarization automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.webhook, n8n-nodes-base.respondtowebhook, n8n-nodes-base.set, n8n-nodes-base.googlesheets, n8n-nodes-base.code, @n8n/n8n-nodes-langchain.agent, @n8n/n8n-nodes-langchain.lmchatgooglegemini, @n8n/n8n-nodes-langchain.lmchatgroq

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Mychel Garzon.

Original n8n.io source

1.1 Workflow description

Title
Triage incidents and enforce SLAs with Gemini, Groq, Google Sheets and Slack
Workflow name
Triage incidents and enforce SLAs with Gemini, Groq, Google Sheets and Slack

Reduce MTTR with context-aware AI severity analysis and automated SLA enforcement

Know that feeling when a "low priority" ticket turns into a production fire? Or when your on-call rotation starts showing signs of serious burnout from alert overload?

This workflow handles that problem. Two AI agents do the triage work—checking severity, validating against runbooks, triggering the right response.

What This Workflow Does

Incident comes in through webhook → two-agent analysis kicks off:

Agent 1 (Incident Analyzer) checks the report against your Google Sheets runbook database. Looks for matching known issues, evaluates risk signals, assigns a confidence-scored severity (P1/P2/P3). Finally stops you from trusting "CRITICAL URGENT!!!" subject lines.

Agent 2 (Response Planner) builds the action plan: what to do first, who needs to know, investigation steps, post-incident tasks. Like having your most experienced engineer review every single ticket.

Then routing happens:

  • P1 incidents → PagerDuty goes off + war room gets created + 15-min SLA timer starts
  • P2 incidents → Gmail alert + you've got 1 hour to acknowledge
  • P3 incidents → Standard email notification

Nobody responds in time? Auto-escalates to management. Everything logs to Google Sheets for the inevitable post-mortem.

What Makes This Different

Feature This Workflow Typical AI Triage
Architecture Two specialized agents (analyze + coordinate) Single generic prompt
Reliability Multi-LLM fallback (Gemini → Groq) Single model, fails if down
SLA Enforcement Auto-waits, checks, escalates autonomously Sends alert, then done
Learning Feedback webhook improves accuracy over time Static prompts forever
Knowledge Source Your runbooks (Google Sheets) Generic templates
War Room Creation Automatic for P1 incidents Manual
Audit Trail Every decision logged to Sheets Often missing

How It Actually Works: Real Example

Scenario: Your monitoring system detects database errors.

Webhook receives this messy alert:

{
 "title": "DB Connection Pool Exhausted",
 "description": "user-service reporting 503 errors",
 "severity": "P3",
 "service": "user-service"
}

Agent 1 (Incident Analyzer) reasoning:

  1. Checks Google Sheets runbook → finds entry: "Connection pool exhaustion typically P2 if customer-facing"
  2. Scans description for risk signals → detects "503 errors" = customer impact
  3. Cross-references service name → confirms user-service is customer-facing
  4. Decision: Override P3 → P2 (confidence score: 0.87)
  5. Reasoning logged: "Customer-facing service returning errors, matches known high-impact pattern from runbook"

Agent 2 (Response Coordinator) builds the plan:

  • Immediate actions: "Check active DB connections via monitoring dashboard, restart service if pool usage >90%, verify connection pool configuration"
  • Escalation tier: "team" (not manager-level yet)
  • SLA target: 60 minutes
  • War room needed: No (P2 doesn't require it)
  • Recommended assignee: "Database team" (pulled from runbook escalation contact)
  • Notification channels: #incidents (not #incidents-critical)

What happens next (autonomously):

  1. Slack alert posted to #incidents with full context
  2. 60-minute SLA timer starts automatically
  3. Workflow waits, then checks Google Sheets "Acknowledged By" column
  4. If still empty after 60 min → escalates to #engineering-leads with "SLA BREACH" tag
  5. Everything logged to both Incidents and AI_Audit_Log sheets

Human feedback loop (optional but powerful):

On-call engineer reviews the decision and submits:

POST /incident-feedback
{
 "incidentId": "INC-20260324-143022-a7f3",
 "feedback": "Correct severity upgrade - good catch",
 "correctSeverity": "P2"
}

→ This correction gets logged to AI_Audit_Log. Over time, Agent 1 learns which patterns justify severity overrides.

Key Benefits

  • Stop manual triage: What took your on-call engineer 5-10 minutes now takes 3 seconds. Agent 1 checks the runbook, Agent 2 builds the response plan.

  • Severity validation = fewer false alarms: The workflow cross-checks reported severity against runbook patterns and risk signals. That "P1 URGENT" email from marketing? Gets downgraded to P3 automatically.

  • SLAs enforce themselves: P1 gets 15 minutes. P2 gets 60. Timers run autonomously. If nobody acknowledges, management gets paged. No more "I forgot to check Slack."

  • Uses YOUR runbooks, not generic templates: Agent 1 pulls context from your Google Sheets runbook database — known issues, escalation contacts, SLA targets. It knows your systems.

  • Multi-LLM fallback = 99.9% uptime: Primary: Gemini 2.0. Fallback: Groq. Each agent retries 3x with 5-sec intervals. Basically always works.

  • Self-improving feedback loop: Engineers can submit corrections via /incident-feedback webhook. The workflow logs every decision + human feedback to AI_Audit_Log. Track accuracy over time, identify patterns where AI needs tuning.

  • Complete audit trail: Every incident, every AI decision, every escalation — all in Google Sheets. Perfect for post-mortems and compliance.

Required APIs & Credentials

  • Google Gemini API (main LLM, free tier is fine)
  • Groq API (backup LLM, also has free tier)
  • Google Sheets (stores runbooks and audit trail)
  • Gmail (handles P2/P3 notifications)
  • Slack OAuth2 API (creates war rooms)
  • PagerDuty (P1 alerts—optional, you can just use Slack/Gmail)

Setup Complexity

This is not a 5-minute setup. You'll need:

Google Sheets structure:

  • 3 tabs: Runbooks, Incidents, AI_Audit_Log
  • Pre-populated runbook data (services, known issues, escalation contacts)

Slack configuration:

  • 4 channels: #incidents-critical, #incidents, #management-escalation, #engineering-leads
  • Slack OAuth2 with bot permissions

Estimated setup time: 30-45 minutes

Quick start option: Begin with just Slack + Google Sheets. Add PagerDuty later.

Who This Is For

  • DevOps engineers done being the human incident router
  • SRE teams drowning in alert fatigue
  • IT ops managers who need real accountability
  • Security analysts triaging at high volume
  • Platform engineers trying to automate the boring stuff

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Incident Report Trigger

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 1.1

Block 2 - Accept and Continue

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.1

Block 3 - Normalize Incident Data

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 4 - Fetch Runbook Context

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 5 - Build Runbook Context

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 6 - Agent 1 - Incident Analyzer

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 7 - Analyzer LLM (Gemini)

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 8 - Analyzer Fallback (Groq)

Type / Role
@n8n/n8n-nodes-langchain.lmChatGroq - lmChatGroq
Config choices
Version 1

Block 9 - Parse Analyzer Output

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 10 - Agent 2 - Response Coordinator

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 11 - Coordinator LLM (Gemini)

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 12 - Coordinator Fallback (Groq)

Type / Role
@n8n/n8n-nodes-langchain.lmChatGroq - lmChatGroq
Config choices
Version 1

Block 13 - Process Response Plan

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 14 - Log to Incident Tracker

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 15 - Log AI Decision Audit

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 16 - Route by AI Severity

Type / Role
n8n-nodes-base.switch - switch
Config choices
Version 3.2

Block 17 - P1 - Send Critical Alert

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.2

Block 18 - P2 - Send High Alert

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.2

Block 19 - P3 - Send Notification

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.2

Block 20 - Needs War Room?

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2

Block 21 - P1 - Create War Room

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.2

Block 22 - P1 - Wait SLA Time

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 23 - P1 - Check Acknowledgment

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 24 - P1 - Still unacknowledged?

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2

Showing the first 24 of 44 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Triage incidents and enforce SLAs with Gemini, Groq, Google Sheets and Slack
Complexity advanced
Nodes 44
Categories Ticket Management, AI Summarization
Author Mychel Garzon
Published 22 Mar 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/14237/14237.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Triage incidents and enforce SLAs with Gemini, Groq, Google Sheets and Slack do?

Reduce MTTR with context aware AI severity analysis and automated SLA enforcement Know that feeling when a "low priority" ticket turns into a production fire? Or when your on call rotation starts s...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Ticket Management, AI Summarization use case.