Core concepts
Understand how organizations, the AI runtime, Knowledge, Widget, and conversations fit together
Bubblo is organized around a small set of objects. Knowing where each one lives makes the rest of the dashboard easier to navigate.
Organization
An organization is the ownership, access, billing, and data-isolation boundary. Its active members share one set of Knowledge and Actions, one Inbox, organization-level AI provider configurations, and one Widget channel.
Starter and Pro organizations can save multiple OpenAI-compatible providers. Each provider can keep several candidate chat models with one selected model. At most one provider is enabled for the organization at a time, and all providers may be disabled. Enabling one provider disables the previously enabled provider, and an enabled configuration must be disabled before it can be edited. Bubblo never switches or fails over between saved custom providers automatically.
The organization also chooses an AI reply source. Use Bubblo AI first uses the managed allowance and switches to the currently enabled custom provider only after that allowance is exhausted. Use the current provider only sends every AI turn to that provider. A managed or custom provider failure does not trigger provider failover; the conversation moves to Needs human instead. Embeddings remain managed by Bubblo. See AI providers.
If you belong to more than one organization, use the organization switcher in the dashboard sidebar. Use separate organizations for separate businesses or websites that should not share data.
Stateless AI core
Bubblo uses one stateless AI runtime across organizations. For every conversation turn, it loads resources scoped to the current organization. The runtime is not a dashboard resource and cannot be created, configured, or switched independently.
The runtime uses the current organization’s Knowledge, active Actions, effective AI reply source, Widget channel configuration, and conversation context. It does not retain organization state or a separate long-lived AI identity between requests.
Widget channel and cid
The Widget is the chat interface installed on your website. Each organization currently has one Widget channel, which owns the support name, avatar, appearance, and visitor-facing copy. The channel is identified by its public cid; it is not bound to a website domain.
The installation snippet includes a cid (channel ID), which tells Bubblo which Widget channel—and therefore which organization—received the request:
<script src="https://cdn.bubblo.ai/widget.js" cid="YOUR_CHANNEL_ID"></script>
Treat the snippet as public widget configuration, not as proof of a visitor’s identity.
Knowledge source
A knowledge source is organization-owned content that the AI can use when answering. Sources can be manual text, a web page, a discovered site URL, or an uploaded file.
Adding a source does not immediately make it searchable. It moves through this lifecycle:
unindexed -> indexing -> indexed
\-> failed
Only indexed content is ready for retrieval. Editing or re-scraping a source returns it to unindexed, so it must be indexed again. See Knowledge.
Conversation
A Widget conversation appears in the organization’s Inbox. Its current state shows whether the conversation is open and whether the AI or a teammate can handle the next reply:
| State | Meaning |
|---|---|
| AI handling | The conversation is open, takeover is off, and no current AI failure requires attention. |
| Needs human | The conversation is open and either a teammate has taken over or the AI could not continue. |
| Resolved | The conversation is closed. Reopen it before replying. |
See Inbox for AI-unavailable incidents, takeover, replies, summaries, resolve, and reopen behavior.