Skip to main content
The chat embed lets you place the full Puppeteer chat experience directly inside your website. Unlike the widget, which floats as a bubble, the embed fills a container you define — ideal for dedicating a section of a page to the agent. Under the hood, both the embed and the widget use the same chat interface and support the same theming options. The difference is purely in presentation — the widget adds a collapsible bubble, while the embed renders inline. Embedded chat

Basic setup

Add an iframe pointing to the /widget route:

Theming

Pass color and branding options as URL parameters:
Hex color values must be URL-encoded — replace # with %23. For example, #712F4A becomes %23712F4A.

Full example

Opening a specific thread

By default, the embed creates a new thread. To open an existing thread, generate a JWT token for that thread and pass it as the accessToken parameter:
See Authentication for how to generate a JWT token scoped to a thread.

Interaction modes

The embed supports three interaction modes depending on your project configuration:
  • Text — Standard chat interface.
  • Web Call — Browser-based voice call.
  • Phone Call — Triggers a phone call to the user.
The available modes are determined by your project settings in the Puppeteer dashboard.