Website Widget#
Callback, meeting, and chat leads from any website — one script line, zero dependencies, Shadow-DOM-isolated from the host design.
Embedding#
html
<script src="https://api.callfluence.staging.bestbrandseverywhere.com/widget/callfluence-widget.js"
data-tenant="bbe" defer></script>| Attribute | Meaning |
|---|---|
data-tenant | Tenant ID the leads are assigned to |
data-api | Optional: different API base URL |
data-label | Optional: floating button label (default "Rückruf erhalten") |
What the visitor sees#
A floating button in the bottom-right corner opens a panel with three paths:
- Callback — phone number plus preferred time (now, 30 minutes, today, tomorrow).
- Meeting — name, phone number, and preferred slot as text.
- Chat — message plus reply channel (phone or email).
Every submission lands as a lead with its source page (page_url) in the tenant's CallFluence lead inbox, available through the lead API and in the console's WebWoW_Audio section.
Public lead intake#
POST
/v2/public/leadsThe only open endpoint of the platform. Protection:
- Honeypot field — bots that fill the invisible field get a silent yes and create no lead.
- Rate limit — 10 requests per IP per minute, then
429. - Write only — nothing can be read through this route.
| Field | Required | Meaning |
|---|---|---|
tenant | yes | Tenant ID |
kind | yes | callback, meeting, or chat |
phone | for callback/meeting | Phone number for the callback |
message | for chat | The visitor's message |
name, email, preferred_at, page_url | no | Lead context |
Styling#
The widget renders in the CallFluence design (dark panel, lime accent) and never touches the host CSS — it runs entirely inside a Shadow DOM. System dialogs (alert, prompt) are never used.