widget object in the agent config, and can be edited in the Studio or via the API.
The widget object
The widget config lives on your agent under thewidget field:
Position
Controls where the widget renders on the page.full when you’re dropping the agent into a dedicated section of your page (a whole panel or full page). Use right (or left) for the classic floating chat-widget look.
Widget type and buttons
Thewidget_type determines what the launcher shows the user before they start a session.
You can also individually toggle and rename the buttons:
start_call_button_text field controls the primary call-to-action inside the widget (default: "Start Chat").
Theming
Colors
Gradient example
Branding
Add your company logo, name, and supporting text to the widget:View mode
Use
iframe for maximum isolation and simplicity. Use widget when you want the launcher to visually blend with your page.
Suggested topics
Show a short list of starter prompts under the widget’s welcome UI to nudge users toward useful conversations.Allowed origins
Control which domains are allowed to embed this agent’s widget. Only requests from the origins you list can load the widget and start a conversation with the agent — every other domain is refused with403 origin_not_allowed.
Best practices
- Turn
allowed_domains_enabled: trueon for any production agent — otherwise anyone can embed your agent on their own site and consume your usage. - Include every origin the same agent will be used from — your marketing site, app, staging environment, etc.
- Include the exact scheme (
https://vshttp://) and subdomain (www.matters). - After enabling, verify the widget still loads on every intended origin.
Full example
An agent with a floating right-side widget, gradient theming, both buttons visible, and domain restrictions on:Next steps
Widget SDK reference
Every prop the React widget accepts.
Install the widget
Drop the React widget into your app in a few lines.