SupportBot Platform — How-To Guide
Everything you need to know to build, manage and deploy intelligent customer support chatbots — from first login to live chat flows.
What is SupportBot?
SupportBot is a no-code customer support automation platform. You design conversation flows visually, publish them, and your customers interact with them through an intelligent chat interface — all without writing a single line of code.
Visual Flow Builder
Drag-and-drop nodes to create multi-step conversation flows with branching logic.
Live Conversations
All customer chat sessions are saved with analytics — outcomes, duration, and path history.
Knowledge Base
Write articles, FAQs and guides. Link them to flows so agents always have context.
API Integrations
Connect external APIs directly from flows. Test them live inside the builder.
Team Management
Invite agents and managers. Each role has the right level of access.
AI-Powered MCP Tools
Generate OpenAI-compatible tool definitions for your APIs to use in AI agents.
Logging In
Access the SupportBot platform from the login page. Your account credentials are set up by your company administrator or superadmin.
Open the Login Page
Navigate to login.html in your browser. You will see the SupportBot login panel on the right and a branded panel on the left.
Enter Your Credentials
Type in your email address and password. These are provided by your account administrator. Use the eye icon to reveal your password if needed.
Click Sign In
You will be authenticated and redirected to the main platform dashboard automatically. If your credentials are wrong, an error message appears in red.
First time? Your account is created by the Superadmin. Contact your platform administrator to get your login credentials. Passwords can be changed via the Superadmin panel.
Session timeout: Sessions persist in your browser. Clicking Sign Out from the user menu in the top-right clears your session and returns you to the login page.
Dashboard
The Dashboard is your home for managing all conversation flows. It shows a grid of flow cards, organized by category, with search and filter tools.
Stats Bar
At the top, four stat counters show: Total Flows, Published, Total Nodes, and Drafts. These update in real time as you create or publish flows.
Category Sidebar
On the left side, categories let you organize flows into groups (e.g. "Hotel Services", "Billing", "IT Support"). Click a category to filter the flow grid. Right-click or use action buttons to edit/delete categories.
Tip: Click All Categories at the top of the sidebar to see every flow regardless of category.
Creating a New Flow
Click "New Flow"
The purple button in the top-right of the flow grid toolbar opens the New Flow modal.
Fill in the Details
Enter a Flow Name (required), optional description, assign a Category, and pick a Color Theme for the card.
Create & Start Building
Click Create Flow. The new flow card appears in the grid and you're taken straight to the Builder.
Flow Card Actions
Each flow card shows the flow name, status badge (Draft / Published), node count, and category. Hover the card to reveal:
| Action | Result |
|---|---|
| Edit | Opens the flow in the visual Flow Builder |
| Preview | Opens the chat simulator for this flow in a side panel |
| Duplicate | Creates a copy of the flow with "— Copy" appended to the name |
| Delete | Permanently removes the flow (requires confirmation) |
Flow Builder
The Flow Builder is a visual canvas where you design conversation flows by connecting nodes. Think of each node as one "step" in the conversation — a question, a message, a decision, an API call, and so on.
Canvas Controls
| Action | How To |
|---|---|
| Pan (move around) | Click and drag on empty canvas space |
| Zoom in / out | Mouse scroll wheel, or use + − buttons in the sub-navbar |
| Fit all nodes in view | Click the Fit button in the sub-navbar |
| Add a node | Drag a node type from the left palette and drop it on the canvas |
| Select a node | Single-click the node — its properties load in the right panel |
| Move a node | Click and drag the node to a new position |
| Connect nodes | Drag from the small circular output port (right/bottom of node) to the input port (left/top) of another node |
| Delete a node | Select the node, then click the button in the properties panel |
| Auto Layout | Click Auto Layout in the topbar to neatly arrange all nodes |
Properties Panel (Right Side)
When you click a node on the canvas, the right panel slides open showing two tabs:
- Edit tab — configure the node's content, input type, answer options, API settings, etc.
- Simulate tab — run a live chat simulation directly from this panel
All changes in the properties panel update the node on the canvas in real time.
Saving & Publishing
Save (Draft)
Click Save in the topbar. The flow is saved as a Draft and is not visible to customers yet.
Publish
Click Publish in the topbar. The flow status changes to Published. It becomes available in the customer chat page.
Back to Dashboard
Click ← All Flows in the green sub-navbar to return to the Dashboard. Your changes are always saved before navigating away.
Properties tip: Click the Properties button in the topbar to edit the flow's name, description, and category without going back to the dashboard.
Node Types
Every node represents one step in the conversation. Drag them from the left palette. Here's what each one does:
Question
Bot asks a question. User picks from multiple-choice buttons or types a free-text/phone/email/number answer. Each choice links to a different next node.
Message
Bot sends a plain message with no user input required. A "Continue" button moves the conversation forward.
Condition
Evaluates a variable against a condition (equals, contains, greater than, etc.) and automatically routes to a True or False branch — no user input.
Photo / Card
Displays an image or a rich media card with a caption. Useful for showing property photos, product cards, or diagrams.
Upload File
Prompts the customer to upload a file (image, PDF, etc.). The upload is handled by the chat client.
Set Variable
Silently sets one or more flow variables (no message shown). Used to prepare data before an API call or condition check.
API Call
Makes a live HTTP request (GET/POST/PUT/PATCH/DELETE) to any external API. Maps response fields to variables. Supports {'{{'}vars{'}}'}.
Go to Flow
Redirects the conversation to a completely different published flow. Great for modular design.
End / Resolve
Marks the conversation as Resolved. The bot shows a closing message and the conversation is logged as complete.
Escalate
Marks the conversation as Escalated to a human agent. Logs the escalation reason and ends the bot interaction.
Connecting Nodes (Wiring)
Each node has output ports (small circles on the right or bottom). Drag from an output port and drop onto another node's input port (left or top circle) to create a wire connection. For Question nodes, each answer option has its own output port so each choice can lead somewhere different.
Press Escape to cancel a wire drag in progress.
Using Variables in Nodes
Any text field that supports {'{{'}vars{'}}'} allows you to inject dynamic values. For example:
Hello {'{{'}customerName{'}}'}! Your booking reference is {'{{'}bookingId{'}}'}.
// API URL with variable
https://api.hotel.com/bookings/{'{{'}bookingId{'}}'}/status
Variables are set when a user answers a Question (via Save Input → Variable), from an API response mapping, or by a Set Variable node.
Preview & Simulate
Test your flow before publishing using the built-in chat simulator. You can simulate the exact conversation a customer would have — including API calls, variable injection, and branching logic.
How to Open the Simulator
Click "Preview" in the Topbar
While in the Flow Builder, click the Preview button in the top action bar. The right panel slides open and switches to the Simulate tab.
The Bot Starts Automatically
The simulation begins from the Start Node of your flow. The bot sends its first message and waits for your input.
Interact as a Customer Would
Click choice buttons, type text responses, and follow the conversation path. You'll see exactly what a real customer sees.
Restart Anytime
Click the restart button in the simulator header to reset and start fresh.
Test Variables
Click TEST VARIABLES (collapsed panel inside the simulator) to pre-seed variable values before the simulation starts. Enter one key=value per line:
phone=9876543210
accountId=ACC-001
roomNumber=304
Then click the restart button to apply these values to the simulation.
Flow Path Tracker
The simulator shows a Flow Path tracker at the bottom that records every node visited, its type, and the user's answer at each step — useful for debugging branching logic.
Tab toggle: Click Preview in the topbar again while the simulator is open to switch back to the editor panel. The button highlights in purple when preview is active.
Conversations
The Conversations page shows every chat session that has taken place — from preview simulations, the chat page, and the chat modal widget. All sessions are logged with outcome, duration, and full message history.
Date Filters
Use the date preset buttons to quickly filter conversations by time period:
For a custom date range, enter a From and To date and click Apply. All analytics cards and the chart update instantly.
Analytics Cards
Five stat cards summarize the filtered conversations:
| Card | What It Shows |
|---|---|
| Total | Total conversation count in the selected date range |
| Resolved | Conversations that reached an End / Resolve node (+ % of total) |
| Escalated | Conversations that triggered an Escalate node (+ % of total) |
| Incomplete | Conversations that ended without a resolution (+ % of total) |
| Avg Duration | Average time (in seconds or minutes) from start to end |
Daily Chart
A bar chart shows conversations per day (or per hour for today/yesterday). Bars are color-coded: ■ Resolved, ■ Escalated, ■ Incomplete. Hover over any bar for exact numbers.
Outcome Filters & Search
Below the chart, use the filter tabs to narrow down by outcome (All / Resolved / Escalated / Incomplete), or type in the search box to find conversations by flow name, agent name, or outcome keyword.
Conversation List & Pagination
Conversations are listed 100 per page. Each row shows: session ID, flow name, outcome badge, duration, agent, and timestamp. Click a row to expand the full message transcript. Use the Prev / Next buttons or page numbers at the bottom to navigate pages.
Click Load Samples in the page header to populate the conversations list with demo data — useful for testing the analytics before real conversations exist.
Knowledge Base — Articles
The Knowledge Base stores internal support articles — troubleshooting guides, FAQs, standard procedures, escalation scripts. Agents and bots can reference these to give accurate answers.
Creating an Article
Go to Knowledge Base → Articles tab
Click Knowledge Base in the top navigation. The Articles tab is selected by default.
Click "+ New Article"
The article editor modal opens with fields for Title, Category, Tags, Content, and Status.
Write Your Content
Fill in the article title and body. Use the rich text editor to format the content with headings, lists, and code blocks.
Set Status and Save
Choose Published to make it active or Draft to save without publishing. Click Save.
Organizing Articles
Articles can be filtered by Published / Draft status and searched by title keyword. Use the filter tabs above the article grid to quickly find what you need.
Tip: Click Seed KB & APIs from the user menu to auto-populate the Knowledge Base with sample hotel/hospitality articles for demo purposes.
API Collection (Postman-like)
The API Integrations tab in the Knowledge Base is a full Postman-style API collection manager. Organize your external API calls into collections, test them live, and map their responses for use in flows.
Collections & Requests
The API panel has a 2-level tree structure:
- Collection — A group of related API requests (e.g., "Hotel PMS API", "Payment Gateway"). Each collection holds its own auth settings.
- Request — A single API endpoint (e.g., GET /bookings/{'{'}id{'}'}, POST /payments/charge). Belongs to a collection.
Creating a Collection
Click "+ New Collection"
The collection modal opens. Enter a Name, Base URL, Description, and select the Authentication type.
Set Authentication
Choose from: Bearer Token API Key Basic Auth No Auth. Enter your credentials — they apply to all requests in the collection by default.
Save Collection
Click Save Collection. The collection appears in the left sidebar tree.
Adding & Testing Requests
Click a collection in the sidebar, then click + Add Request. The request editor opens with 6 tabs:
| Tab | Purpose |
|---|---|
| Params | URL query parameters (key-value pairs) |
| Headers | Custom request headers (key-value pairs) |
| Body | JSON request body for POST/PUT/PATCH methods |
| Auth | Override or inherit collection-level authentication |
| Outcome Map | Define visual rules: map API response fields → flow outcomes (Resolved / Escalated / etc.) |
| MCP Tool | View and generate the OpenAI function-calling tool definition for this request |
Click Send to execute the request live. The response pane shows the HTTP status, time taken, response size, and formatted JSON body.
CORS note: The browser will block requests to APIs that don't allow cross-origin access. Ensure your external API has CORS enabled, or use a proxy server for restricted APIs.
AI-Assisted Descriptions
If an OpenRouter API key is configured by the Superadmin, you can click:
- AI Describe — Automatically generates a plain-English description of what the API request does
- AI Suggest Outcomes — Analyzes the request and suggests outcome mapping rules based on typical API response patterns
MCP Tool Definitions
Each API request can generate an MCP Tool Definition — a JSON schema in the OpenAI function-calling format. These definitions let AI agents (like GPT-4, Claude, etc.) know when and how to call your APIs.
Generating an MCP Tool
Open a Request → MCP Tool Tab
Select any request in the API Collection, then click the MCP Tool tab in the 6-tab editor.
Click "Generate MCP"
SupportBot analyzes the request (URL, method, params, auth, outcome map) and generates a complete function_calling JSON object.
Copy and Use
Click Copy JSON to copy the definition to your clipboard. Paste it into your AI agent's tools configuration.
The generated MCP definition includes a _meta block with collection ID, auth type, and outcome mappings — all the context your AI agent needs to execute the call correctly.
Team Management
Managers and Account Admins can access the Team page to invite, manage, and remove team members. Each member has a role that determines their access level.
User Roles
| Role | Access Level |
|---|---|
| Account Admin admin | Full access — can manage users, flows, KB, conversations, and account settings |
| Manager manager | Can build flows, manage KB and conversations. Can invite new agents. |
| Agent agent | Can view flows and conversations. Limited editing rights depending on configuration. |
Inviting a Team Member
Open Team Page
Click your avatar (top-right) → Team. Or navigate directly to admin.html.
Click "Invite Member"
Enter their name, email address, and select a role. Click Send Invite.
Member Receives Credentials
The new user account is created. The administrator shares the login credentials with the new member directly.
Chat URL & Widget
In the Team admin page, the Chat URL tab shows the embeddable chat widget code and the direct link to the customer-facing chat page. Share this link or embed the snippet in your website so customers can access the support bot.
Customer Chat Page
The chat.html page is what your customers see. It's a standalone, dark-themed chat interface that lists your published flows and lets customers start conversations.
Category Grid
The chat page opens with a category picker showing all published flow categories as cards. Customers click a category to see the flows available in it, then select a flow to start a conversation.
Conversation Interface
Once a flow is selected, the full chat UI appears:
- Header — Shows the flow name and Online status indicator
- Messages area — Bot and user bubbles appear here
- Choice buttons — Scrollable row of option buttons for Question nodes
- Text input — Shown for text/phone/email/number input nodes
- Footer — "← All topics" link and Powered by SupportBot branding
Branding: The chat footer shows "Powered by SupportBot". The header avatar and bot name are pulled from the flow's configuration.
Superadmin Panel
The Superadmin panel (superadmin.html) is accessible only to the platform-level super administrator. It manages all companies, users, platform-wide settings, and data backup.
Restricted Access: The Superadmin panel is for platform operators only. Regular account users do not have access to this page.
Companies Tab
View and manage all company accounts on the platform. Create new company accounts, set their plan tier, and emulate any company's session for troubleshooting.
Users Tab
See all users across all companies. Reset passwords, change roles, or deactivate accounts from this panel.
Backup Tab
Export or restore platform data. Useful for migrations or disaster recovery scenarios.
Platform Settings Tab
Configure global platform settings including:
- OpenRouter API Key — Used to power AI features (AI Describe, AI Suggest Outcomes) in the API Collection panel
- AI Model — Choose which language model to use (GPT-4o-mini, Claude 3 Haiku, Gemini Flash, Mistral, etc.)
- Test Key — Verify the API key is valid and has credits before saving
The OpenRouter API key is stored securely in the platform database and shared across all accounts. Agents never see the raw key — they only benefit from the AI features it enables.
Tips & Best Practices
Flow Design
- Always start with a Question or Message node as your first node and mark it as the start node.
- Every flow path should end with either an End / Resolve or Escalate node — never leave paths open-ended.
- Use Set Variable nodes before Condition nodes to ensure variables are populated before evaluation.
- Use Auto Layout frequently to keep your canvas tidy — especially after adding many nodes.
- Test with Preview after every major change before publishing.
- Use Go to Flow nodes to split large flows into smaller, reusable modules.
API Call Nodes
- Always use
{'{{'}varName{'}}'}syntax for dynamic values in URLs, headers, and body. - Map important response fields to variables so downstream nodes can use the data.
- Add a Save Raw Response → Variable as a debug fallback during testing.
- Test your API call in the API Collection panel first, then use the confirmed URL/method in the flow node.
Conversation Quality
- Keep bot messages short and clear — one idea per message bubble.
- Limit multiple-choice options to 4–6 items for a better mobile experience.
- Always include an Escalate path as a fallback option so customers can always reach a human agent.
- Use variable interpolation (e.g.,
Hello {'{{'}name{'}}'}) to personalize the conversation.
Using Analytics
- A high Escalated % may indicate that your flow isn't answering the most common questions — review and add more branches.
- A high Incomplete % often means users are abandoning mid-conversation — check for confusing nodes or broken API calls.
- Use the Flow Path Tracker in the simulator to trace exactly where conversations go wrong.
- Check the Avg Duration — very long conversations may need to be simplified or split.
Glossary
Key terms used throughout the SupportBot platform.
| Term | Definition |
|---|---|
| Flow | A complete conversation design — a graph of connected nodes that defines how the bot interacts with a customer from start to finish. |
| Node | A single step in a flow (Question, Message, Condition, API Call, etc.). Nodes are connected by wires. |
| Wire | A visual connection between two nodes that defines the conversation path. |
| Variable | A named placeholder {'{{'}varName{'}}'} that stores a value during a conversation (e.g., user's name, booking ID). |
| Start Node | The first node a flow executes when a conversation begins. Every flow must have exactly one start node. |
| Outcome | How a conversation ended: Resolved, Escalated, or Incomplete. |
| Collection | A named group of API requests sharing the same base URL and authentication settings. |
| Request | A single API endpoint definition (method + URL + headers + body) inside a collection. |
| Outcome Map | Rules that translate an API response field's value into a flow outcome (e.g., status == "success" → Resolved). |
| MCP Tool | A JSON definition (OpenAI function-calling format) that tells an AI agent how to call a specific API endpoint. |
| Simulate / Preview | Running the flow in a test chat simulator inside the builder — no real customer data is used. |
| Draft | A flow that has been saved but not yet published. Not visible to customers. |
| Published | A flow that is live and available to customers via the chat page. |
| Escalation | Transferring a conversation to a human agent because the bot couldn't resolve it. |
| OpenRouter | An AI API gateway used by SupportBot's AI features (descriptions, outcome suggestions). Requires a funded account key set by the Superadmin. |
| Supabase | The PostgreSQL database backend that stores all platform data (flows, conversations, users, KB articles, API collections). |
| Superadmin | The platform-level administrator who manages all company accounts, users, and platform-wide settings. |
Ready to build?
Open the platform and start creating your first flow. It only takes a few minutes.
Open SupportBot Platform