Helpdesk & Knowledge Base

The helpdesk has two halves: a knowledge base managed through the helpdeskKb tRPC router, and tickets that reuse the unified-inbox threads with a helpdesk overlay. Both are surfaced in the console at /manage/helpdesk.

The helpdeskKb router

Knowledge-base articles and their categories are CRUD-managed through the helpdeskKb router on the company-manager API, called at /api/trpc/helpdeskKb.<procedure> with the standard tRPC conventions:

Procedure Purpose
getArticles List articles.
getArticleById Fetch one article.
createArticle Create an article.
updateArticle Update an article.
deleteArticle Delete an article.
getCategories List categories.
getCategoryById Fetch one category.
createCategory Create a category.
updateCategory Update a category.
deleteCategory Delete a category.
Tip

The knowledge base is a clean example of a relational defineEntity — its articles and categories are entity-backed models with generated CRUD. If you're building your own relational domain, read Entities and use the KB as the reference shape.

Tickets

Tickets are not a separate model — they are the existing unified-inbox threads with a helpdesk overlay carrying the ticketing fields:

  • priority
  • tags
  • SLA
  • CSAT

The console renders these at /manage/helpdesk alongside the knowledge base. Because a ticket is an inbox thread underneath, its conversation content flows through the same inbox surface, and the overlay adds the helpdesk-specific metadata on top.

Related