API Docs

Quickstart

AdminUpdated Sep 19, 2026

Quickstart

Install Chatly and ship your first conversation in five minutes.

1. Create a workspace

Sign up at app.chatlychat.com. You'll land in the inbox immediately.

2. Install the widget

In Channels, click New channel → Web. The channel detail screen shows a public ID — copy it, then paste this before the closing </body> of your site:

<script>
(function (w, d, s, p) {
  w.Chatly = w.Chatly || function () { (w.Chatly.q = w.Chatly.q || []).push(arguments); };
  w.Chatly.publicId = p;
  var a = d.createElement(s); a.async = 1;
  a.src = 'https://widget.chatlychat.com/loader.js';
  d.head.appendChild(a);
})(window, document, 'script', 'YOUR_PUBLIC_ID');
</script>

Warning — The public ID goes on window.Chatly, not on the tag

The loader reads window.Chatly.publicId. A <script src="…/loader.js"> with the ID in a data- attribute and nothing on the global starts nothing — you get [Chatly] missing publicId — widget not started in the console and an empty page corner.

The snippet also defines window.Chatly as a function that queues calls onto Chatly.q. Anything you call before the bundle lands — Chatly('open'), Chatly('track', 'signup') — is replayed once, in order, when it does. After load the same callable form keeps working, and an unknown method warns rather than vanishing.

The widget bundle is ~46 KB gzipped, injected async so it never blocks render, and mounted in a Shadow DOM so your CSS and ours cannot collide.

3. Identify visitors (optional)

import { Chatly } from '@livechat/sdk-js';

const lc = Chatly.init({ publicId: 'YOUR_PUBLIC_ID' });

await lc.identify({
  externalId: 'user_42',
  email: '[email protected]',
  attributes: { plan: 'business' },
});

Chatly.init() is the constructor — new Chatly(...) is not available. See the browser SDK for the full surface, and Identity Verification if you want the claim to be provable rather than merely asserted.

4. Set up routing

In Teams, pick a routing strategy (round_robin, load_balanced, or manual) and add agents. New conversations are assigned automatically.

You're live. 👋

Was this page helpful?