Skip to content
Sendora Cloud
Create account
Operate · Knowledge Base

Write once. Render as public help page (`/help/<org>`), AI chatbot RAG context, in-app `kb.search()`. Honest about the gaps.

Most help-center tools give you one surface. Sendora KB powers three for real today: public SSR'd help page at `sendoracloud.com/help/<your-org>`, AI chatbot grounding via gpt-oss:20b RAG, in-app SDK `kb.search()`. Honest about what's NOT built: custom-domain on the public page, auto-link to incoming Support tickets, KB-read timeline inside ticket detail, helpful-vote endpoint (the column exists but no POST route), `kb.article_viewed` event emitted to the analytics bus (view bump is a column update, not an event).

Features

  • Articles + categories + tags + slug control + status — CRUD per project. kb_articles table holds title + slug + body + categoryId + tags[] + status (draft/published).
  • Public help center at `sendoracloud.com/help/<your-org>` — SSR'd, 60s revalidate, indexed by Google. View bump on public-article fetch (auto-increments views column). Honest: no custom-domain support today.
  • AI chatbot grounding — articles auto-retrieved via Postgres ILIKE over title + body, top-5 reranked + top-3 fed as RAG context to gpt-oss:20b on Ollama Cloud. Citations returned. Implementation in chatbot/reply.ts.
  • In-app search SDKkb.search(query) on Web 2.16+ and RN 0.18.2+. Drop into your app's help menu.
  • View counters auto-increment on public fetchviews column bumped fire-and-forget. Honest: the bump is a column update; no kb.article_viewed event is written to the platform events table today, so KB reads don't feed Analytics / Audiences / Workflows.
  • Helpful-vote columnhelpful_count column exists on kb_articles. Honest: there's no POST /kb/articles/:id/helpful endpoint today; the column is unused.
  • Markdown body — articles stored as Markdown text; renderer is on the consumer (public help page, SDK consumer).
  • Honest non-features: no automatic ticket deflection (Support inbox does NOT auto-suggest KB articles for incoming tickets); no "operators see which articles a user read before opening a ticket" timeline; no custom-domain help center; no kb.article_viewed analytics event.

Common use cases

Replace Intercom Help Center for the public-docs + AI-bot-RAG combo — the chatbot RAG is the differentiated piece.

Self-serve docs that the Contact Widget's AI bot can answer from before opening a ticket.

In-app help menu using `kb.search()` — render results inline in your own UI, no Sendora dashboard required.

Start in minutes. Scale without switching tools.

The free tier covers most side projects. Every module is turn-key and every SDK is first-party.