Support APIQuick starts by stack

Quick starts by stack

Each page takes a signed-in user on your site to a verified Gauge chat in about 15 minutes, and wires the webhook back to your server. Pick your stack:

StackPageServer helper
Next.js (App Router)nextjs.md@gauge/support (npm)
Expressexpress.md@gauge/support (npm)
Djangodjango.mdgauge-support (PyPI)
Laravellaravel.mdgauge/support (Composer)
Railsrails.mdgauge_support (gem)
Go (net/http)go.mdgithub.com/gauge-chat/pulse/packages/sdk-go

Mobile app instead? Flutter package and React Native, iOS and Android recipes. API only? quickstart-api.md.

Every page follows the same four steps

  1. Token endpoint. GET /gauge-token on your server, behind your own login, returns { "token": "…" }: a signed integration token for the signed-in user (HS256, ≤ 10 minutes). The identity secret stays on your server.
  2. Widget. One script tag and PulseWebchat.init({ …, getToken }). The widget fetches a fresh token on every open.
  3. Webhook. POST /gauge/webhooks verifies x-pulse-signature over the raw body, refuses anything more than 5 minutes old, and dedupes on the event id.
  4. Check it. Send a chat message as a signed-in user: the conversation shows Verified in the console. Then Developers → Webhooks → your endpoint → Send test event: it lands signed, with a valid example payload for the event you picked, and your handler answers 200.

What you need from the console

ValueWhereKept
App idApps → your App → Installanywhere
Identity secretApps → your App → Install → Identity secretserver env only
Integration keyApps → your App → Integrations (customer, salon, …)anywhere
Chat connection idApps → your App → Install (it is in the widget snippet)anywhere
Webhook signing secretDevelopers → Webhooks → Add endpoint (shown once)server env only

Start in the sandbox: Developers → Support → pick Sandbox, then Seed test customers for users you can sign in as on each Integration. Nothing there is billed or leaves Gauge.

These snippets are tested

Every block marked snippet=… on these pages is extracted and run in CI against its SDK (packages/sdk-* test suites): the token it mints must verify, and its webhook handler must accept the signed test deliveries in packages/sdk-testvectors/webhook-test-event.json (generated from the Gauge server's own test sender) and refuse a tampered one. A page that drifts from its SDK turns a suite red.

On this page