Loading…
Loading…
Try the chat and approval experience, then match it to your product. This preview uses sample responses and never calls a model or sends an email.
The same React component works inline or as a floating assistant. Page context stays separate from authorization.
Inline sits in the page; floating docks to a corner.
Page context the host passes in. It informs the answer; it never grants access.
Production setup: install the client and React packages, provide a host-backend token callback, and choose an approved agent deployment. The delivery guide has the exact configuration.
Both render the same interface from the same code — pick whichever fits your stack.
One tag, anywhere in your page. Works in Rails, Django, ASP.NET, WordPress, plain HTML — anything that can serve a script element. The widget renders inside a shadow root, so your stylesheet and its stylesheet cannot reach each other.
<script src="https://console.flozentai.com/embed/v1.js"
data-gateway-url="https://gateway.flozentai.com"
data-deployment-id="YOUR_DEPLOYMENT_ID"
data-token-url="/flozentai/token"
defer></script>A credential in a data- attribute is readable by every script on the page. Instead the widget calls an endpoint on your own origin, which authenticates the visitor with the session you already set and performs the exchange server-side. The browser never holds a long-lived secret.
// Your backend, where the visitor is already signed in.
// Exchange your own session for a short-lived gateway token.
app.get('/flozentai/token', requireSignIn, async (req, res) => {
const token = await flozentai.exchange({
subject: req.user.id,
tenant: req.user.organizationId,
deploymentId: process.env.FLOZENTAI_DEPLOYMENT_ID,
});
res.json({ accessToken: token.accessToken, expiresIn: token.expiresIn });
});Drop in the script tag, or install the React package. Either way, point it at a token endpoint on your backend and an approved deployment.