Website embeds
Website embeds
Put a Voxlera form on a clinic's website with one iframe. No API key, no backend work.
A Voxlera embed is a small form, hosted by Voxlera, that a clinic places on its own website. When a visitor submits it, Voxlera records the request and the visitor’s consent, then its AI agent takes over: it calls the person back, and depending on the form, books them in or follows up on WhatsApp.
There are two embeds:
| Consultation form | International enquiry form | |
|---|---|---|
| For | Local patients who want a consultation | Patients abroad asking about treatment |
| Collects | Name, phone, email, preferred call time | Name, phone, treatment of interest, language, country, notes |
| Then | AI call in the chosen time band, books a consultation | AI call in the patient’s language, WhatsApp follow-up with a booking link |
| Guide | Consultation form | International enquiry form |
How it works
- A clinic staff member with permission to manage integrations opens the Voxlera dashboard, goes to Doctors, and copies the embed snippet. Each clinic has its own snippet for each form.
- You paste the snippet into the clinic’s website where the form should appear.
- Visitors fill in the form inside the iframe. Submissions go straight to Voxlera — they never pass through the clinic’s website or server.
Each snippet contains a long, random embed token that identifies the clinic. It is not a secret in the password sense (it is visible in the page source), but it is unguessable and tied to one clinic and one form.
The snippet
Both snippets are a single <iframe> with no script tag and no extra parameters:
<iframe
src="https://app.voxlera.co/embed/consult/{token}"
style="width:100%;max-width:480px;height:640px;border:0;"
title="Book a consultation"
></iframe>
Always copy the snippet from the dashboard rather than typing it: it contains the clinic’s real token and the correct host.
Tip
You can change the style attribute to fit the page — for example a different max-width. Keep the height at least as tall as the default, because the form does not resize itself (see Sizing).
Sizing
The iframe has a fixed height. The form inside does not send its height to the parent page, and there is no postMessage API. Use the default heights in the snippets as a starting point, and check the form on a narrow phone screen where fields stack and validation messages add height. If the frame is too short, the form scrolls inside it, which still works but looks cramped.
Where it can be embedded
Embeds can be framed on any website — there is no per-domain allowlist to configure. They work on plain HTML pages, WordPress, Webflow, Wix and similar builders, as long as the builder lets you add a custom HTML or iframe block.
Styling and branding
The form uses Voxlera’s neutral styling and shows the clinic’s name. There are no theming options today: you can’t change colours or fonts from the snippet, and the iframe’s content can’t be styled by the parent page’s CSS.
Rotating a token
If a snippet needs to be retired — say it was placed somewhere it shouldn’t be — a staff member with permission to manage integrations can regenerate it from the same dashboard card. The old snippet stops working immediately (it shows a “not found” page), so update every page that uses it straight away. Regenerating the consultation token does not affect the enquiry token, and vice versa.
Spam and abuse protection
Both forms include:
- Validation — phone numbers must be in international format and required fields must be present.
- A hidden honeypot field that people never see but many bots fill in. Submissions that fill it are quietly discarded.
- Rate limits per visitor and per form, so one source can’t flood a clinic with fake requests.
- Mandatory consent — the form can’t be submitted without the consent box ticked.
There is no CAPTCHA.
Can I build my own form instead?
Not yet. The embed is the supported integration, because it is where Voxlera collects the patient’s explicit consent to be called and messaged, in the wording the clinic has signed off. The endpoints the embeds post to are internal: they accept requests only from Voxlera’s own pages in the browser and may change without notice. A supported way to submit leads from your own form is on the API roadmap.
Troubleshooting
| Symptom | Likely cause |
|---|---|
| The frame shows a “not found” page | The token was regenerated, or the snippet was copied incompletely. Copy a fresh snippet from the dashboard. |
| The form is cut off or scrolls inside the frame | The iframe is too short. Increase the height in the style attribute. |
| The frame is blank | The website’s own security settings block third-party frames. Allow app.voxlera.co in the site’s frame-src / child-src Content Security Policy, or ask the site’s host. |
| “Too many requests” after several test submissions | You hit the rate limit while testing. Wait a minute and try again. |
| A test submission didn’t lead to a call | The clinic may have the agent paused, the call may be scheduled for later in the chosen time band, or the number may be outside the clinic’s test setup. Ask the clinic to check the dashboard. |