Skip to main content
Available since FlowX.AI v5.5Chat Intents are available starting with FlowX.AI version 5.5.

Overview

Chat Intents enables intent-based navigation and routing within Chat components to support sophisticated conversational AI workflows. This feature allows the system to classify user intents and route conversations accordingly, enabling dynamic workflow routing, UI Flow navigation from chat interactions, and context preservation during intent transitions.

Intent classification

AI-powered detection of user intents from messages with multi-intent and context-aware support

Dynamic routing

Route conversations to appropriate workflows based on detected intents

UI Flow navigation

Navigate to UI Flow screens directly from chat interactions

Context preservation

Maintain conversation context during intent transitions and thread management
Chat Intents builds on and integrates with:
  • Chat Component (released in v5.4.0)
  • Conversational Workflow & Memory
  • Routing Agent / Intent Classification workflow nodes

How intents work

Chat Intents provide a structured way to handle user inputs that match known patterns, while falling back to AI for unmatched queries.

Intent processing flow

1

User sends message

The user types a message in the chat interface.
2

Intent matching

The system analyzes the message against configured intents using:
  • Keyword matching
  • Pattern recognition
  • Semantic similarity
3

Action execution

If an intent matches:
  • Execute the configured action (workflow, response, or custom logic)
  • Display any quick reply options
If no intent matches:
  • Forward to the AI agent for natural language processing
4

Response delivery

The response is displayed in the chat interface.

Configuring intents

Accessing intent configuration

1

Open Chat component settings

In UI Flows Designer, select your Chat component and open the Settings panel.
2

Navigate to Intents

Click on the Intents tab to access intent configuration.
3

Add new intent

Click Add Intent to create a new intent configuration.

Intent properties

PropertyDescriptionRequired
NameUnique identifier for the intentYes
Display nameHuman-readable name shown in UIYes
Trigger patternsPatterns that activate this intentYes
Action typeWhat happens when intent is triggeredYes
ResponseMessage to display (for response actions)Conditional
WorkflowWorkflow to execute (for workflow actions)Conditional
Quick repliesSuggested follow-up optionsNo
PriorityOrder of evaluation when multiple intents matchNo

Trigger patterns

Define how user messages are matched to intents.

Pattern types

Match messages containing specific keywords:
{
  "type": "keywords",
  "values": ["account balance", "check balance", "balance inquiry"]
}
Matching behavior:
  • Case-insensitive by default
  • Matches if any keyword is present
  • Supports partial matching with wildcards
Match messages that exactly match specified phrases:
{
  "type": "exact",
  "values": ["help", "start over", "main menu"]
}
Matching behavior:
  • Case-insensitive
  • Requires exact phrase match
  • Trims whitespace
Match messages using regex patterns:
{
  "type": "regex",
  "pattern": "^(show|display|get)\\s+(my\\s+)?account"
}
Matching behavior:
  • Full regex support
  • Useful for complex patterns
  • Performance consideration for complex patterns
Match messages with similar meaning:
{
  "type": "semantic",
  "examples": [
    "What is my account balance?",
    "How much money do I have?",
    "Show me my balance"
  ],
  "threshold": 0.8
}
Matching behavior:
  • Uses AI to understand intent
  • Matches semantically similar phrases
  • Configurable similarity threshold

Combining patterns

Combine multiple pattern types for comprehensive matching:
{
  "patterns": [
    {
      "type": "keywords",
      "values": ["balance", "account"]
    },
    {
      "type": "semantic",
      "examples": ["How much money do I have?"],
      "threshold": 0.75
    }
  ],
  "matchMode": "any"
}
Match modeDescription
anyTriggers if any pattern matches
allTriggers only if all patterns match

Intent actions

Configure what happens when an intent is triggered.

Action types

Display a predefined response message:
{
  "actionType": "response",
  "response": {
    "message": "Your current account balance is ${accountBalance}.",
    "format": "text"
  }
}
Options:
  • Static text messages
  • Dynamic content with variables
  • Markdown formatting support

Quick replies

Configure quick reply buttons that appear after an intent response, guiding users to common follow-up actions.

Quick reply configuration

{
  "quickReplies": [
    {
      "label": "View transactions",
      "value": "show my recent transactions",
      "icon": "list"
    },
    {
      "label": "Transfer money",
      "value": "I want to transfer money",
      "icon": "arrow-right"
    },
    {
      "label": "Talk to agent",
      "value": "connect me to a human agent",
      "icon": "user"
    }
  ]
}

Quick reply properties

PropertyDescriptionRequired
labelText displayed on the buttonYes
valueMessage sent when clickedYes
iconIcon displayed with the buttonNo
styleButton styling variantNo

Styling quick replies

Quick reply buttons can be styled through Theme Admin:
PropertyDescription
Background colorButton background
Text colorButton label color
BorderBorder style and color
Border radiusCorner rounding
PaddingInternal spacing

Fallback handling

Configure behavior when no intent matches the user’s message.

Fallback options

Forward unmatched messages to the AI agent:
{
  "fallback": {
    "type": "ai",
    "agentId": "default-agent"
  }
}
This is the default behavior - unmatched messages are processed by the configured AI agent.
Display a default response:
{
  "fallback": {
    "type": "response",
    "message": "I'm not sure I understand. Please try one of these options:",
    "showQuickReplies": true,
    "quickReplies": [
      {"label": "Account balance", "value": "check balance"},
      {"label": "Help", "value": "help"}
    ]
  }
}
Escalate to a human agent or different workflow:
{
  "fallback": {
    "type": "escalate",
    "workflow": "human-handoff",
    "message": "Let me connect you with someone who can help."
  }
}

Example: Banking assistant intents

Here’s a complete example of intent configuration for a banking assistant:
{
  "intents": [
    {
      "name": "check-balance",
      "displayName": "Check Balance",
      "patterns": [
        {
          "type": "keywords",
          "values": ["balance", "how much", "account"]
        },
        {
          "type": "semantic",
          "examples": ["What's my balance?", "How much money do I have?"],
          "threshold": 0.8
        }
      ],
      "action": {
        "type": "workflow",
        "workflow": "get-account-balance"
      },
      "quickReplies": [
        {"label": "View transactions", "value": "show transactions"},
        {"label": "Transfer funds", "value": "transfer money"}
      ]
    },
    {
      "name": "view-transactions",
      "displayName": "View Transactions",
      "patterns": [
        {
          "type": "keywords",
          "values": ["transactions", "history", "statement"]
        }
      ],
      "action": {
        "type": "navigate",
        "target": "transactions-screen"
      }
    },
    {
      "name": "help",
      "displayName": "Help",
      "patterns": [
        {
          "type": "exact",
          "values": ["help", "?", "what can you do"]
        }
      ],
      "action": {
        "type": "response",
        "message": "I can help you with:\n- Checking your account balance\n- Viewing transactions\n- Transferring money\n- Finding branch locations\n\nWhat would you like to do?"
      },
      "quickReplies": [
        {"label": "Check balance", "value": "check balance"},
        {"label": "Transactions", "value": "view transactions"},
        {"label": "Transfer", "value": "transfer money"}
      ]
    }
  ],
  "fallback": {
    "type": "ai",
    "message": "Let me think about that..."
  }
}

Best practices

Intent design

Keep intents focused

Each intent should handle one specific user need

Use clear patterns

Make patterns specific enough to avoid false matches

Provide quick replies

Guide users with suggested actions after responses

Test thoroughly

Test with various phrasings to ensure reliable matching

Pattern configuration

  • Start with keyword matching for common phrases
  • Add semantic matching for more natural interactions
  • Use regex sparingly for complex patterns
  • Set appropriate thresholds for semantic matching

Fallback handling

  • Always configure a fallback behavior
  • Consider user experience when no intent matches
  • Use AI fallback for natural conversation flow
  • Provide escape routes (e.g., “talk to human”)

Troubleshooting

Possible causes:
  • Pattern not matching user input
  • Priority conflict with another intent
  • Semantic threshold too high
Solutions:
  • Review and test patterns with actual user inputs
  • Check intent priorities
  • Lower semantic matching threshold
  • Add more keyword variations
Possible causes:
  • Overlapping patterns between intents
  • Semantic matching too broad
  • Priority configuration incorrect
Solutions:
  • Make patterns more specific
  • Increase semantic matching threshold
  • Adjust intent priorities
  • Use exact matching for specific commands
Possible causes:
  • Quick replies not configured
  • Display mode not supporting quick replies
  • Theme configuration hiding quick replies
Solutions:
  • Verify quick reply configuration
  • Check display mode compatibility
  • Review theme settings for quick reply visibility

Integration points

Chat Intents integrates with multiple FlowX.AI components to enable sophisticated conversational experiences.

With Chat Component

IntegrationDescription
Intent detectionAnalyze incoming messages for intent classification
Response routingRoute responses based on classification results
Context passingPass conversation context to target workflows

With UI Flows

IntegrationDescription
Intent-triggered navigationNavigate to specific screens based on detected intent
State preservationMaintain UI state during navigation transitions
Summary prompt supportDisplay conversation summaries during navigation

With Workflows

IntegrationDescription
Workflow initiationStart workflows based on detected intents
Data mappingMap chat context data to workflow input parameters
Response handlingReturn workflow results back to the chat interface

Use cases

Customer support routing

Route customer inquiries to appropriate support workflows:
  1. User describes their issue in chat
  2. Intent classification identifies the support category
  3. Conversation routed to specialized support workflow
  4. Escalation triggered based on intent confidence or keywords

Multi-step process guidance

Guide users through complex workflows conversationally:
  1. User expresses intent to complete a task (e.g., “I want to apply for a loan”)
  2. Intent triggers the appropriate onboarding workflow
  3. Chat guides user through each step with context-aware prompts
  4. Navigation to relevant UI screens as needed

Conversational forms

Complete forms through natural conversation:
  1. Intent classification identifies the form type needed
  2. Chat collects required fields through conversation
  3. Smart suggestions based on user context
  4. Validation and confirmation through chat

Last modified on February 10, 2026