ForHosting KIT · Semantic Search & RAG

Build an FAQ bot

A customer asks about a password reset in their own words and gets the answer from your help article, even if they phrase it differently; questions your FAQ doesn't cover are admitted, not invented. Pay per use, no subscription.

● StablePer request + per query$0.003
Use it from WebAPIEmailTelegramApp soon

Run this on our servers with your account. Free tools run in your browser; this one bills your KIT balance per the price above.

Most FAQ bots either answer everything with false confidence or answer nothing beyond a handful of scripted phrases.

Why scripted FAQ bots break

A keyword-matched FAQ script only works when visitors phrase a question the way its author guessed. Ask the same thing another way and it misfires or replies with a generic fallback message. This bot works from your actual help content instead of trigger phrases: it looks for the passages that match what the question means, then answers only from them. A rephrased question gets the same answer as the original wording, and the reply never wanders into topics your help centre does not address.

How teams use it, and the gaps it reveals

Support teams put it first in chat to resolve common questions at once and pass only the rest to a person. Software companies let users ask setup and billing questions in their own words, and IT teams answer routine password and access requests from an internal knowledge base. Every FAQ has gaps, such as a new feature that shipped before the help articles caught up. When a question falls into one, the bot says so instead of inventing an answer, and the questions it cannot answer show you which articles to write next.

First-line support triage

A support team deploys the bot as the first response in chat, resolving common questions instantly and escalating only what genuinely needs a human.

Self-service for a SaaS help centre

A software company lets users ask setup and billing questions in their own words and get answers sourced from existing help articles.

Internal IT helpdesk bot

An IT team answers common password-reset and access-request questions from an internal knowledge base, freeing staff for harder tickets.

Honest gap detection

A product team notices which questions the bot can't answer and uses that pattern to prioritize which help articles to write next.

What happens if my FAQ content doesn't cover the question?

The bot states plainly that the question isn't covered by the supplied content rather than fabricating a plausible-sounding answer.

Does the bot understand rephrased questions?

Yes, it retrieves based on meaning, not exact keyword matches, so a question worded differently from your FAQ text can still be answered correctly.

Can I use my existing help centre articles directly?

Yes, supply your existing help centre content or FAQ set as the source; there's no need to rewrite it into a special format.

Is my FAQ content stored after answering?

No, submitted content and results are deleted after the retention window and are never used for training.

Can the bot show me which help articles I'm missing?

Yes, indirectly. The questions it cannot answer reveal the gaps in your help content, and that pattern tells you which articles are worth writing next.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/rag/faq-bot

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/rag/faq-bot \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"content":"P: ¿Cuánto dura la garantía? R: Dos años desde la compra.\nP: ¿Cómo cambio mi plan? R: Desde Ajustes › Facturación.","query":"¿Cuánto dura la garantía?"}'
{
  "content": "P: ¿Cuánto dura la garantía? R: Dos años desde la compra.\nP: ¿Cómo cambio mi plan? R: Desde Ajustes › Facturación.",
  "query": "¿Cuánto dura la garantía?"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "rag.faq_bot",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.003
Per query$0.015

Published price — no tokens, no invented credits. A failed task is never charged.

max_chunks10000
max_tokens20000
HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.
422task_failedThe task failed after 3 retries. You are never charged for it.

This endpoint reads your actual help centre content, answers what it genuinely covers, and admits plainly when a question falls outside it.

The old FAQ bot problem, restated honestly

A keyword-matched FAQ script only works if the visitor happens to phrase their question the way the script author guessed they would; ask it the same question a different way and it either misfires or shrugs with a generic fallback message. rag.faq_bot replaces that guessing game with retrieval over your actual help content, so the bot understands what's being asked rather than matching a fixed set of trigger phrases, and it answers a rephrased question just as well as the original wording.

Sending a request and getting the answer

The response is grounded strictly in the FAQ content you supplied, which keeps the bot from wandering into topics your help centre never actually addresses. POST /rag/faq-bot with your help centre content or FAQ set and the incoming question, and the task runs asynchronously — a task_id returns immediately, with the answer following through a signed webhook call or a signed link valid for 24 hours.

Saying 'I don't know' is the feature, not the bug

Every FAQ set has gaps — a new feature that shipped before the docs caught up, an edge case nobody wrote an article about — and the honest response to a question in that gap is to say so, not to fabricate a plausible-sounding answer that turns out to be wrong. That's the behavior this endpoint is built around: an answer confidently grounded in real content when the content exists, and a clear admission of the limit when it doesn't, which is exactly what separates a trustworthy support tool from one that quietly erodes trust the first time it invents a policy.

Where the FAQ format itself came from

This endpoint keeps that same instinct — collect the real, recurring answers in one place — but replaces the static list a visitor has to scroll through with a direct question-and-answer exchange that finds the right entry regardless of phrasing.

How does the FAQ chatbot API work?

POST your help centre or FAQ content and the incoming question to /rag/faq-bot, and receive the grounded answer by webhook or a signed link valid for 24 hours.

Is the FAQ bot API free?

No, there is no free tier or trial; it costs $0.003 per request plus $0.015 per query, and a failed task is never charged.

Can it handle many questions at once?

Yes, submit one async task per question and collect answers by webhook as each completes, which scales to high volumes.

Is this endpoint live?

Yes, /rag/faq-bot is live and accepting production traffic now.

Read the full KIT documentation →