ForHosting KIT · Semantic Search & RAG

Build an FAQ bot

Most FAQ bots either answer everything with false confidence or answer nothing beyond a handful of scripted phrases. This endpoint reads your actual help centre content, answers what it genuinely covers, and admits plainly when a question falls outside it.

● StablePer request + per query$0.003
Use it from WebAPIEmailApp soonTelegram 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.

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

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. 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.

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

The FAQ document has been a fixture of online support since the earliest Usenet groups, where the same handful of questions kept resurfacing and someone eventually just wrote the answers down once, in one place, to stop repeating themselves. 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.

Rolling it into a support stack

Because pricing is a flat per-request fee plus a per-query rate and the task runs async, a support team can put this in front of a live chat widget as the first response layer, escalating to a human only when the bot's answer coverage genuinely runs out. That structure lets a small support team handle a much larger volume of repetitive questions without adding headcount for the questions that were already answered somewhere in the help centre.

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.

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.

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.

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.

Is my FAQ content stored after answering?

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

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, and soon from our app, email and Telegram.

curl -X POST https://api.kit.forhosting.com/rag/faq-bot \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":"…"}'
{
  "input": "…"
}
{
  "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.

Read the full KIT documentation →