Embed on your site
By the end of this page your Copilot will be running on your own website.
Prerequisites
- A live Copilot deployment (Deploy).
After deploying, the Deploy tab shows an Embed on your site section with copy-paste snippets. Pick the one that fits your site.
Option 1 — Floating widget (recommended)
A chat bubble that floats in the corner of every page. Add one script tag before </body>:
<script src="https://<slug>.qraptor.app/embed.js"
data-copilot async></script>The script injects a launcher bubble and loads your Copilot in a panel when clicked. You can position the bubble with an optional attribute:
<script src="https://<slug>.qraptor.app/embed.js"
data-copilot data-position="bottom-left" async></script>data-position accepts bottom-right (default) or bottom-left.
Option 2 — Inline iframe
Embed the Copilot inside a specific section of a page instead of a floating bubble:
<iframe src="https://<slug>.qraptor.app"
style="width:100%;height:600px;border:0"></iframe>Option 3 — Direct link
Every Copilot is also a standalone page. Share the URL directly, or link to it from a button:
https://<slug>.qraptor.appSee it live
Open the link (or the floating widget) and your Copilot runs exactly as your users experience it — your branding, welcome message, and suggested prompts, answered by the bound agent.
Allow the sites that embed it
For the widget or iframe to load on your own domain, that domain must be an allowed origin. You can add origins at deploy time, or manage them anytime from the deployment:
Open the deployment’s Embed page
In the project sidebar, open Deployments, select your Copilot deployment, and open Embed under Access.
Add your website’s origin
Enter the origin — the scheme and host only, e.g. https://www.example.com — and click Add Origin. Repeat for each site.
Only HTTPS origins are allowed, and changes take effect within about 60 seconds. Cross-origin embedding also depends on the embedding site’s own headers — the widget loads only when its origin is on this list and that site’s Content-Security-Policy permits framing. If the embed shows a blank frame, check both.
Sign-in behavior
- If you deployed as public, the Copilot loads immediately for anyone.
- If you deployed as OIDC, embedded users are prompted to sign in through your identity provider (in a popup from the widget, or a redirect on the standalone page) before they can chat.
Common issues
- The widget doesn’t appear — Confirm the script tag is present and the Copilot is Live. Check the browser console for CORS or frame errors.
- Blank iframe / “refused to connect” — Add the embedding site to Allowed origins (HTTPS only), and wait up to a minute.
- Users are unexpectedly asked to sign in — The deployment is set to OIDC. Redeploy as public if it should be open to everyone.