Portal
The Portal is the main web UI for this ecosystem (end-user apps + admin operations).
What it does
- End-user access to apps (e.g. ThingsBoard) through a unified entrypoint.
- Admin UI to manage users, roles, and subsystem synchronization.
- Configuration of AI features (RAGs, MCP agents, LLM models) used by Chat UI / Chatbots.
Runtime configuration (important)
The Portal UI consumes generated runtime config (for example, subsystems.json). Do not edit versioned runtime JSON by hand.
See:
docs/internal/operations/configuration.mddocs/internal/operations/environments.md
Users and subsystems (admin)
User identity is managed in Zitadel. The Portal Admin UI reads user identity/roles from Zitadel and provides buttons to:
- Check whether a user exists in ThingsBoard / Chatwoot
- Create/sync users into those subsystems
Important: ThingsBoard OAuth bootstrap is still partially manual.
See docs/internal/services/platform/thingsboard-zitadel.md.
Related documentation
- ThingsBoard:
docs/internal/services/platform/thingsboard.md - Chatwoot:
docs/internal/services/platform/chatwoot.md - Zitadel:
docs/internal/services/security/zitadel.md - RAG:
docs/internal/technologies/rag.md - MCP:
docs/internal/technologies/mcp.md - LLM models:
docs/internal/technologies/llms.md