config.v1 on the widget. You can also auto-brand from a domain, which pulls colors and logos from your website and writes them into the same fields.
This page is a reference for the appearance fields. For the message text, default mode, and quick actions, see Text, voice, and quick actions. To create the widget in the first place, see Creating a widget.
Editing appearance requires the
web_widgets:manage scope. web_widgets:read is view-only.Theme
The Theme select decides which color scheme the widget renders in.
The value is stored at
config.v1.theme.
Colours
Colors are defined separately for Light Mode and Dark Mode so the widget looks right in either theme. Each mode exposes the same four tokens.<mode> is light_mode or dark_mode. Each is a theme object with background_color and text_color maps. Leave a token empty to fall back to the built-in default for that mode.
Surfaces like the message background, header, input, and agent response text are fixed neutral colors and are not themed by these four tokens.
Launcher button
The launcher is the floating button visitors click to open the widget. Its fields live underconfig.v1.trigger.
Per-mode launcher overrides
By default the launcher uses the singlebackgroundColor and avatarUrl. Toggle Override dark mode or Override light mode to set mode-specific values under trigger.dark and trigger.light. Each override block accepts:
When a mode override is set, it takes precedence over the top-level
backgroundColor and avatarUrl for that mode.
Chat window
Turn on Use Avatar under Chat window to give the agent a custom avatar inside the open chat. You upload a Light Avatar (chat.avatar_url) and an optional Dark Avatar (chat.dark_avatar_url).
When the chat avatar is disabled, the chat window falls back to the launcher avatar, or to the default Orb.
Position
The launcher is anchored to the bottom-right corner. Set its offsets in pixels underconfig.v1.position.
config.v1 structure
All appearance and content settings live underconfig.v1. The relevant shape:
chat object also holds content fields that are not part of the Theming tab:
See Text, voice, and quick actions for the content and mode fields.
Auto-Brand
Auto-Brand fills in colors and logos from a domain so you do not have to set them by hand. Enter a domain in the Auto-Brand box at the top of the Theming tab and fetch it. Anyreach looks up the domain through brand.dev and applies the result toconfig.v1.
1
Enter a domain
Type your website domain (for example
example.com) and run the fetch. The protocol, www., and a trailing slash are stripped automatically.2
Anyreach retrieves the brand
The platform calls brand.dev for that domain and returns the brand’s logos, colors, company info, and social links.
3
Values are applied to config.v1
The fetched data is merged into the current config. Review the result and click Save changes to keep it.
What Auto-Brand sets
Auto-Brand overwrites the color and avatar fields above. Other fields, such as
name, welcome_title, and your launcher size and position, are preserved.Endpoint
The Theming tab calls this endpoint behind the scenes. You can call it directly to fetch brand data for a domain.domain field. The response is the brand object (logos, colors, company, socials) from brand.dev. The endpoint requires the web_widgets:manage scope. Applying that response to config.v1 happens client-side; the endpoint itself only fetches the brand data.
Next steps
Text, voice, and quick actions
Configure welcome copy, default mode, and quick-action buttons.
Creating a widget
Create a widget and walk through the Widget Builder tabs.

