Skip to content
RSFlowHub
  1. Home
  2. APIs
  3. Text & Language
  4. Customer Intent & Entity Recognition API
Text & Language API

Customer Intent & Entity Recognition API

High-accuracy customer intent classification and entity extraction API for support ticket routing and workflow automation.

POST https://rsflowhub.com/api/v1/ai/intent-detection
  • 1 credit per call
  • First 1,000 calls free every month
  • X-API-Key header
  • JSON in, JSON out
POST /api/v1/ai/intent-detection
{
    "text": "I want to cancel my subscription on web and talk to the billing team.",
    "intent_types": [
        "billing_support",
        "subscription_cancel"
    ],
    "intent_entities": {
        "subscription_cancel": [
            "channel"
        ]
    }
}
200 OK response.json
{
    "result": {
        "intent": "cancel_subscription",
        "confidence": 0.96,
        "entities": {
            "refund_requested": true,
            "payment_method": "credit_card"
        }
    }
}
Definition

What is the Customer Intent & Entity Recognition API?

Customer Intent & Entity Recognition API is a REST API on RSFlowHub for web, mobile and AI agent applications. Send a JSON request to POST /api/v1/ai/intent-detection with your API key; RSFlowHub runs it on a tuned AI model, falls back to a backup provider if needed, and returns a structured JSON result, usually within 1 to 3 seconds.

Try it without code or signup: Free intent detector

Endpoint
POST /api/v1/ai/intent-detection
Authentication
X-API-Key header
Price
1 credit per call, first 1,000 free / month
Rate limit
10 to 120 requests / minute by plan
Typical response
1 to 3 seconds
Format
JSON, UTF-8

Request parameters

Send these fields as a JSON body. An invalid or missing field returns a 422 error that names the field.

FieldTypeRequiredDescription
text string Required The user message or text to classify. Required if "messages" is not provided (Max: 5,000 characters).
intent_types array of strings Optional Optional list of allowed intent names (e.g. ["cancel_subscription", "upgrade_plan"]). Max 10 items.
intent_entities object Optional Optional JSON object mapping intent types to arrays of entity keys to extract. Max 10 items.
messages array of objects Optional Optional conversation history for context-aware classification. Each message contains "role" (user/assistant) and "content" (max 1,000 chars). Max 5 messages.
examples array of objects Optional Optional few-shot examples to guide classification. Each example contains "text", "intent", and optional "entities" object. Max 3 examples.
multi_intent boolean Optional Optional. If true, returns an array of multiple matching intents under "intents". Default is false.
allow_fallback boolean Optional Optional. If true, falls back to "unknown" if confidence is low or intent types do not match. Default is false.
min_confidence number Optional Optional. Decimal threshold between 0 and 1. Filters out intents that fall below this confidence. Default is 0.0.

Code examples

Copy, replace rfh_your_api_key with your key and run. Prefer a client library? See the official SDKs.

request.sh
curl -X POST "https://rsflowhub.com/api/v1/ai/intent-detection" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: rfh_your_api_key" \
  -d '{"text":"I want to cancel my subscription on web and talk to the billing team.","intent_types":["billing_support","subscription_cancel"],"intent_entities":{"subscription_cancel":["channel"]}}'

Response

Every RSFlowHub endpoint uses the same envelope, so one parser handles all of them. Failed calls are not charged.

response.json
{
    "success": true,
    "request_id": "req_3f9a2c7e-5b1d-4e8a-9c2f-7d6e1a0b4c8d",
    "data": {
        "result": {
            "intent": "cancel_subscription",
            "confidence": 0.96,
            "entities": {
                "refund_requested": true,
                "payment_method": "credit_card"
            }
        }
    },
    "meta": {
        "version": "v1",
        "timestamp": "2026-10-05T09:30:00Z"
    }
}
Envelope fields
FieldTypeMeaning
successbooleantrue when the call worked, false on any error.
request_idstringUnique id for this call. Quote it when you contact support.
data.resultobjectThe result of this endpoint (see the example).
errorobjectOnly on failure: code, message and details per field.
metaobjectAPI version and server timestamp.

All error codes: Errors reference

Features

Multi-Label Intent Classification

Identifies single or multiple customer intents (e.g. "billing_support", "subscription_cancel") from free-form text.

Business Entity Extraction

Extracts target entities such as order IDs, account emails, channel types, and requested action dates.

Confidence Scoring

Returns numeric confidence scores (0.0 to 1.0) for each detected intent to trigger automated fallback rules.

Seamless Helpdesk Routing

Built for instant integration with Zendesk, Freshdesk, Intercom, and custom CRM ticket workflows.

Use cases

How teams use the Customer Intent & Entity Recognition API in production.

Helpdesk SaaS

Automated Ticket Department Routing

Classify incoming customer support emails to instantly route them to Billing, Technical Support, or Sales.

Input
I want to cancel my subscription on web and talk to the billing team.
Output
{"intents": ["subscription_cancel", "billing_support"], "route": "billing"}

Removes the wait for manual ticket triage: every ticket is classified as it arrives.

E-Commerce

E-Commerce Chatbot Action Triggering

Understand customer request intent to trigger instant order tracking or return authorization workflows.

Input
Where is my order #88491? It was supposed to arrive yesterday.
Output
{"intent": "track_order", "entities": {"order_id": "88491"}}

Provides instant resolution for common buyer queries.

SaaS Analytics

Churn Risk Escalation

Flag cancellation and complaint intents immediately to trigger retention team alerts.

Input
Your price hike is ridiculous. Close my account immediately.
Output
{"intent": "account_cancellation", "churn_risk": "high"}

Protects recurring revenue through proactive outreach.

AI chatbot

Intent detection for your AI chatbot

A chatbot works best when it knows what the visitor wants before it answers. Send each message to the intent API, get back a label such as "pricing", "refund" or "book_appointment", and decide what the chatbot does next: a fixed reply, a form, a human, or the AI model.

How it works in a chatbot

  1. Visitor: "until what time are you open on Saturday?"
  2. API returns: intent "opening_hours", confidence 0.93
  3. Chatbot sends your saved opening-hours answer, no AI reply needed

Answer common questions for free

Map each intent to a fixed answer. The RSFlowHub chat widget does exactly this with its Auto replies feature, so repeat questions cost no AI reply credits.

Route to the right place

Send "talk to a person" to a support ticket, "pricing" to your sales flow and everything else to the AI model.

Your own intent list

Pass your own intent names and a few example sentences, so the labels match your business instead of a generic list.

Want a chatbot without building one? The RSFlowHub AI chatbot for your website is live in about 5 minutes with one script tag: it answers from your documents, captures leads and creates support tickets. Read the chat widget guide, try the live chatbot demo, see chatbot pricing, or build your own with the chatbots API.

Customer Intent & Entity Recognition API vs building it yourself

The same job done three ways.

TopicRSFlowHub APIRaw LLM promptsRules / regex
Output Validated JSON fieldsFree text you have to parseFixed patterns only
Setup One POST request, no promptsWrite and maintain prompts and parsingWrite and maintain rule lists
Provider outage Automatic fallback to a backup modelYou build retries and a second vendorNot applicable
Pricing 1 credit per call, failed calls freePer token, per vendorYour own servers and upkeep
Understands context Yes, AI modelYes, AI modelNo, keywords only

Frequently asked questions

What is intent detection and how does it work?
Intent detection analyzes natural language text to identify what the user is trying to accomplish (e.g. asking a question, requesting a refund, reporting a bug).
Can I provide my own custom intent categories?
Yes! You can pass custom intent_types in your API request to constrain classification to your business workflow.
How fast is the Intent Detection API?
Intent Detection requests usually complete in 1 to 3 seconds, depending on input length and the AI model. Identical repeat requests are served from cache and return faster.
Does the API return confidence scores?
Yes. The API provides numeric confidence scores for detected intents so your app can trigger human fallback when confidence is low.
How many credits are deducted per request?
Standard Intent Detection API calls consume 1 base credit per request.

Start using the Customer Intent & Entity Recognition API

Free plan with 100 credits/month + 1,000 bonus credits when you sign in before 23 Nov. Test it in the playground first, no code needed.

RSFlowHub

Sign in to continue

You'll come straight back to this page.

Forgot password?

New to RSFlowHub? Create a free account