In this section
Resources / Developers / Introduction
How Hubbo is built, which hosts you will see, and which integration surfaces exist (and which do not).
Hubbo is a customer-engagement toolkit: notifications, NPS, surveys, a public roadmap, a status page and Messages for visitor conversations. Visitor-facing copy can carry sparse translations overlays per locale (see Help: Translations and languages). For developers, the integration surface is intentionally small: you install one script and configure everything else in the admin app.
| Host | What it is |
|---|---|
| hubbo.io / www.hubbo.io | Marketing site and documentation (this site). |
| app.hubbo.io | Admin app for your team, plus public pages: notification page, roadmap and status page. |
| api.hubbo.io | Embed script (/embed), GraphQL over HTTPS and WebSocket (/graphql). |
<script> tag that mounts widgets on your site. See Embed script reference.window.hubbo.identify() so Targeting can gate on logged-in vs anonymous. See Identify visitors.window.hubbo.setLang() so translation overlays follow your product locale. See Set visitor language.client_* operations used by the widget, available over HTTPS and WebSocket. See GraphQL overview.No public REST API
Hubbo does not offer a public REST API, API tokens for server-to-server automation, or webhooks. The only programmatic surface is the GraphQL endpoint, and only the client_* operations are meant to be called with a project key from a browser.
Hubbo.init(). The optional page API is window.hubbo.identify() / reset() / getVisitor() for auth targeting and setLang() / getLang() for translations — see Identify visitors and Set visitor language.push and email channel values exist in the data model, but notifications are only delivered through the widget and the public notification page.Your page loads https://api.hubbo.io/embed?key=ACCOUNT_KEY. The API sets an httpOnly project-key cookie and returns the embed bundle. The bundle mounts into a Shadow DOM host element, asks the API for the current account (which also applies the plan page-view gate), then loads published notifications, NPS settings and surveys using GraphQL. Realtime changes you make in the admin app arrive via GraphQL subscriptions over WebSocket.