ENGINEERING
A website chatbot on your own gateway, every visitor question stays home
Just activated iSol API? Your key lives in the customer portal, isollm.ai/account → API keys (the portal shows the raw sk-… value; store it in your secret manager). The endpoint for every guide on this blog is https://tokens.4clouders.com/v1, and per-key spend updates live on the same portal page. That is all you need to follow along.
Visitor questions are lead data
A chat widget on your site collects the most commercially sensitive text you have: what prospects are trying to solve, which competitor they're comparing you against, what they're willing to pay. Most bot platforms route that straight to their own cloud and to a model vendor's API, two third parties reading your pipeline before you do.
The gateway pattern fixes the second hop the same way it does for editors and workflows: the bot builder points at your OpenAI-compatible endpoint, and every visitor conversation terminates on infrastructure you chose. Below is the shortest real path we know: Typebot, an open-source chat builder with a first-class website embed, configured against our gateway. The same recipe works on Dify, Flowise and AnythingLLM, all of them ship an embeddable widget and accept a custom OpenAI-compatible endpoint.
Step 1: point Typebot at the gateway
In the Typebot builder (cloud or self-hosted), create a bot and add an OpenAI block to the flow. When it asks for credentials, create a new one and fill both fields, the API key and the Base URL, which is the field most people never touch:
Base URL: https://tokens.4clouders.com/v1
API Key: sk-your-gateway-key
In the block's model field, type the model your gateway serves, on ours, isol-4.9. Typebot doesn't need to know the model in advance; it sends whatever name you give it, and the gateway resolves it.
Step 2: build the loop
The minimal useful flow is three blocks: a Text input (captures the visitor's question), the OpenAI block (answers it, put your business context in the system prompt), and a jump back to the input. Add a welcome message before the loop and you have a working assistant. Keep the system prompt honest about what the bot can and cannot do; a site bot that invents prices costs more than it saves.
Step 3: embed it on your site
Publish the bot, open Share, and Typebot gives you the embed. The bubble variant is one script tag:
<script type="module">
import Typebot from 'https://cdn.jsdelivr.net/npm/@typebot.io/js/dist/web.js'
Typebot.initBubble({ typebot: "my-assistant" })
</script>
That's the whole integration: the widget runs on your page, the flow runs in Typebot, and every model call exits through your gateway credential, one place to see usage, one place to rotate the key, one place to change the model later without touching the site.
Same recipe, other builders
- Dify, add a provider of type OpenAI-API-compatible with the same Base URL and key, build the app, then use Publish → Embed into site for the widget.
- Flowise, use the ChatOpenAI Custom node with the Base Path above; every chatflow has an Embed tab with the script snippet.
- AnythingLLM, set the LLM provider to Generic OpenAI with the same endpoint and enable the embeddable chat widget per workspace.
Step 4: Smoke test, for real
The OpenAI block fires exactly this call. Here it is live, a visitor question, answered with the lead-capture close your system prompt asked for:

Open your site in a private window, ask the widget something specific to your business, and then check two things: the answer arrives (the flow and credential are wired), and your gateway usage dashboard shows the request and its tokens (the traffic really terminated at the gateway, not at a vendor default). If you want the curl-level proof, the same credential answers directly:
curl https://tokens.4clouders.com/v1/chat/completions \
-H "Authorization: Bearer sk-your-gateway-key" \
-H "Content-Type: application/json" \
-d '{"model":"isol-4.9","messages":[{"role":"user","content":"ping"}]}'
Same endpoint the widget uses; if this answers and the dashboard ticks, your website chatbot is sovereign end to end.
Try it on ours
Our gateway (iSol API) runs exactly this setup on sovereign infrastructure, from US$ 99/month, with a 7-day tasting key to try.
Step 5: Verify at the gateway, not at the client
Whatever the tool's UI says, the source of truth is the key's ledger, every request lands there with tokens and spend. If nothing shows up, the change didn't take:
curl -s https://tokens.4clouders.com/key/info \
-H "Authorization: Bearer sk-your-gateway-key" | jq .info.spend
Same gateway, rest of your stack: every guide with real sessions
The pattern: one gateway, every tool
WhatsApp
Telegram
GitHub Actions
Teams
Claude Code
Cursor
VS Code
aider
OpenCode
n8n
Zapier
Power Automate
Power BI
Google Sheets
Hermes Agent