In this section

Resources / Developers / Introduction

Developer overview

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.

Hosts

HostWhat it is
hubbo.io / www.hubbo.ioMarketing site and documentation (this site).
app.hubbo.ioAdmin app for your team, plus public pages: notification page, roadmap and status page.
api.hubbo.ioEmbed script (/embed), GraphQL over HTTPS and WebSocket (/graphql).

What you can integrate with

  • The embed script: one <script> tag that mounts widgets on your site. See Embed script reference.
  • Identify visitors: optional window.hubbo.identify() so Targeting can gate on logged-in vs anonymous. See Identify visitors.
  • Set visitor language: optional window.hubbo.setLang() so translation overlays follow your product locale. See Set visitor language.
  • Public URLs: shareable and iframe-able pages for the notification page, roadmap and status page. See Public URLs.
  • The roadmap Web Component: mount a roadmap board into any element. See Roadmap embed.
  • Client GraphQL: the client_* operations used by the widget, available over HTTPS and WebSocket. See GraphQL overview.

What does not exist

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.

  • No full JavaScript SDK and no 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.
  • No official Google Tag Manager template or npm package. The supported installation is the script tag in your page source.
  • No push or email delivery of notifications. The push and email channel values exist in the data model, but notifications are only delivered through the widget and the public notification page.
  • No bug report product yet. It is coming soon.

Architecture in one paragraph

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.

Where to go next

  1. Embed script reference
  2. Identify visitors
  3. Set visitor language
  4. GraphQL overview
  5. Usage gate: usageAllowed