Skip to main content

Support Ticket Classifier Tutorial

Build an AI-powered support ticket classifier with ActionFlows. A step-by-step tutorial that routes and prioritizes incoming tickets automatically.

AI-Powered Support Ticket Classifier

Learn ActionFlows through real-world examples. Each tutorial takes 15-20 minutes and builds a production-ready workflow.

What you'll build: A system that automatically categorizes incoming support emails and routes them to the right team.

Time: 15 minutes

Skills you'll learn: Start node, AI classification, conditional routing, Slack notifications


The Problem

Your support team receives 100+ emails daily. Manually sorting them into categories (Bug, Feature Request, Billing, General) wastes 2 hours per day.

The Solution

A workflow that reads each email, uses AI to determine the category, and sends it to the appropriate Slack channel.


Step 1: Create the flow (2 minutes)

Create a new flow called Support Email Classifier.

Add a Start node (manual). There is no Email start-node type.

For this tutorial, run the flow with sample email text in the run form. In production, attach a flow webhook from your helpdesk or mailbox so each new ticket POSTs into the same graph.

Leave the Generate Text Prompt empty (or add a mapped field) so Run flow asks for the email body as {nodeId}_prompt. Studio autosaves. Open Settings and click Set to active.


Step 2: Add AI Classification (3 minutes)

Add a Generate Text node. Connect it to your Start node.

Configure the prompt:

You are a support email classifier. Read this email and determine which category it belongs to.

Email Subject: Use the email subject line
Email Body: Use the email body content

Categories:
- BUG: Technical issues or errors
- FEATURE: Feature requests or suggestions
- BILLING: Payment or subscription questions
- GENERAL: Other inquiries

Respond ONLY with the category name (BUG, FEATURE, BILLING, or GENERAL).
Do not include explanation. Just the category.

This node will output just the category name.


Step 3: Create Conditional Routing (5 minutes)

Add a Switch node (also called Conditional). Connect the AI output to it.

In the Switch configuration:

Create four cases:

Case 1: If output equals BUG Case 2: If output equals FEATURE Case 3: If output equals BILLING Case 4: Default (anything else)


Step 4: Add Team Notifications (5 minutes)

For each case, add a Slack node.

For BUG case:

  • Channel: #bugs
  • Message:
Bug Report from Support

From: Use sender email
Subject: Use email subject
Category: BUG

Message: Use email body preview

For FEATURE case:

  • Channel: #feature-requests
  • Message:
Feature Request

From: Use sender email
Subject: Use email subject
Category: FEATURE

Details: Use email body preview

For BILLING case:

  • Channel: #billing
  • Message:
Billing Inquiry

From: Use sender email
Subject: Use email subject
Category: BILLING

Details: Use email body preview

For GENERAL case:

  • Channel: #general-support
  • Message:
General Support Email

From: Use sender email
Subject: Use email subject

Message: Use email body preview

// IMG: Complete flow with all four Slack branches


Add an Email node to each branch. Configure it to send an automatic acknowledgment:

Thank you for contacting support!

We have received your message and routed it to the appropriate team.
You will hear back within 24 hours.

Best regards,
Support Team

Step 6: Test the Workflow (2 minutes)

Click Test.

Provide sample email data:

  • Subject: "Login button not working on mobile"
  • Body: "I cannot log in using the mobile app. Error says 'Invalid credentials.'"

Run the test. The workflow should:

  1. Read the email
  2. Classify it as BUG
  3. Send to #bugs channel
  4. Send acknowledgment email

Check your Slack and email to confirm.


Step 7: Activate and attach inbound HTTP

Studio already autosaves. Open Settings and click Set to active.

This graph still starts from Start. It does not watch a mailbox. For production tickets, create a flow webhook and POST each email payload from your helpdesk, or keep using Run flow with sample text.


What's Happening

Start (or flow webhook POST)

Generate Text classifies

Switch routes

Slack (named connection)

↓ Auto-reply email sent


Your support team now sees tickets in organized channels, not a chaotic inbox.

---

### Next Level: Add More Features

**Count tickets by category:** Use a Database node to log each classification for analytics.

**Escalate urgent issues:** Add an If node to check for keywords like "urgent" or "critical" and notify a manager.

**Learn and improve:** Export classification logs and refine your prompt based on misclassifications.

On this page