Skip to content

Configuration & appearance

Most of the widget is configured server-side in Settings → Web chat, so it applies everywhere the widget is embedded without touching the snippet. The panel is the single source of truth for theme; loader data-* attributes are per-page overrides.

The theme is three optional hex colors, applied to the panel via CSS variables (text automatically picks a readable contrast):

FieldApplies to
theme.primaryHeader and primary accents.
theme.primaryTextText/icons drawn on the primary color.
theme.launcherThe launcher button color.

Each is a #rrggbb (or #rgb) hex value; leave any of them unset to fall back to the default palette. The loader’s data-theme-color only sets the launcher’s instant color before the panel loads and reports the resolved theme back.

branding_enabled toggles a small “Powered by RosettaChat” footer in the panel. Paid support plans may turn it off.

An optional automatic first message:

  • greeting_enabled — show a greeting when the panel opens.
  • greeting_text — the message, authored once in greeting_language.
  • greeting_language — the language you wrote it in; it is translated into the visitor’s language like any other message.

pre_chat_fields collects visitor details (e.g. name, email) before the conversation starts. Captured values ride along with the conversation and appear in the agent inbox.

allowed_origins is the CORS allow-list of site origins that may load the widget and call the visitor API. Add each exact scheme + host. A request from an origin not on the list is rejected.

Set per embed with data-position (left | right) and data-language (defaults to the visitor’s browser language). See the quickstart.