SpaBooking AI

Route map for the chat service. Browser pages are linked. API routes list method and who may call them. Authenticated chat identity is always the SpaBooking Bearer login token.

Entry

Client Chat

  • PAGEClient guest chat
    /client-chat/guest
  • PAGEClient chatbot admin
    /client-chat/admin
    X-Client-Admin-Secret
  • POSTAuthenticated chat
    /api/v1/client-chat/chat
    Bearer SpaBooking token · X-Chat-Key optional (BFF)
  • GETList user sessions / turns
    /api/v1/client-chat/chat/sessions
    Bearer
  • GETOne session turns
    /api/v1/client-chat/chat/sessions/:id
    Bearer
  • DELClear working session
    /api/v1/client-chat/chat/sessions/:id
    Bearer
  • POSTGuest chat
    /api/v1/client-chat/guest/chat
    public · suggestions, selection, language, services[]
  • GETGuest info
    /api/v1/client-chat/guest/info
    public
  • DELGuest session
    /api/v1/client-chat/guest/chat/sessions/:id
    public
  • GETIngest status (guest UI)
    /api/v1/client-chat/guest/ingest-status
    public
  • CRUDIntent configuration
    /api/v1/client-chat/admin/intents
    X-Client-Admin-Secret
  • GET/PUTChatbot style settings
    /api/v1/client-chat/admin/settings
    X-Client-Admin-Secret

Owner Chat

  • PAGEOwner guest chat
    /owner-chat/guest
  • PAGEOwner admin (knowledge + intents)
    /owner-chat/admin
    X-Owner-Admin-Secret
  • POSTAuthenticated chat
    /api/v1/owner-chat/chat
    Bearer SpaOwner token (identity) · X-Chat-Key optional BFF only
  • GETSession info
    /api/v1/owner-chat/chat/sessions/:id
    Bearer SpaOwner · bound to that owner
  • DELClear session
    /api/v1/owner-chat/chat/sessions/:id
    Bearer SpaOwner
  • POSTGuest chat
    /api/v1/owner-chat/guest/chat
    public · returns suggestions, language
  • GETOwner conversation logs
    /api/v1/owner-chat/chat/sessions
    Bearer · this owner’s turns
  • GETGuest info
    /api/v1/owner-chat/guest/info
    public
  • DELGuest session
    /api/v1/owner-chat/guest/chat/sessions/:id
    public
  • GET/POSTList or add knowledge articles
    /api/v1/owner-chat/admin/knowledge
    X-Owner-Admin-Secret
  • GET/PUT/DELOne knowledge article
    /api/v1/owner-chat/admin/knowledge/:id
    X-Owner-Admin-Secret
  • POSTRe-embed knowledge
    /api/v1/owner-chat/admin/reembed
    X-Owner-Admin-Secret
  • CRUDIntent configuration
    /api/v1/owner-chat/admin/intents
    X-Owner-Admin-Secret
  • GET/PUTChatbot style settings
    /api/v1/owner-chat/admin/settings
    X-Owner-Admin-Secret

Catalog ingest

  • POSTStart catalog re-ingest
    /api/v1/admin/ingest
    X-Ingest-Secret
  • GETIngest status
    /api/v1/admin/ingest
    X-Ingest-Secret
Identity: mobile/web apps send Authorization: Bearer <SpaBooking login token> only — not email/password/OTP. X-Chat-Key is optional and for a trusted backend (BFF), not the Flutter app.

Chat responses may include language, suggestions (clickable follow-ups), client selection (sticky soin), client services[] (live cards), and client navigation (screen hint when source is platform-intent).

Guest pages and /guest/* APIs are public (abuse limits apply). Admin panels use product-specific secrets.