Inline
<div id="research-assistant"></div><script> Vol("inline", { elementOrSelector: "#research-assistant", case: "cordis", height: "640px", title: "EU research assistant", });</script>Options
Section titled “Options”| Option | Type | Default | Description |
|---|---|---|---|
elementOrSelector |
string | HTMLElement |
— | Target; its children are replaced. |
mode |
"native" | "iframe" |
"native" |
Web Component (talks to the API directly) or an iframe to {origin}/app/embed/chat?case=…. |
height |
string |
"600px" |
Widget height. |
…init options |
apiKey, baseUrl, case, origin, theme, title, placeholder. |
The call returns the created element (<vol-chat> or <iframe>).
Native vs iframe
Section titled “Native vs iframe”- native (recommended): lightweight, inherits nothing from your CSS, emits
vol:*events. - iframe: renders the full VOL app chat page. Use it when you want the exact app experience; the app
route
/app/embed/chatreceives{ type: "vol:init", apiKey, case }viapostMessageafter load.