Settings

Update Chat Widget

Update a chat widget's configuration.

Pass is_default=true to make this widget the customer's default (the previous default is demoted atomically). is_default=false is rejected — make another widget the default instead.

put/settings/chat-widgets/{chat_widget_id}

Path parameters

chat_widget_idstring uuid required

Request body

enabledboolean nullable

Whether the chat widget is shown on the customer's website

accent_colorstring nullable

Primary color hex code (e.g., #B5683C)

secondary_colorstring nullable

Secondary accent color hex code. Set to null to auto-derive from accent color.

positionstring nullable

Widget position: bottom-right or bottom-left

greeting_messagestring nullable

The first message shown when a visitor opens the chat

assistant_namestring nullable

Displayed in the chat header

system_promptstring nullable

Full system prompt override. Set to null to use assembled prompt from structured fields.

persona_promptstring nullable

Personality/tone instructions

law_firm_contextstring nullable

Firm-specific information. Set to null to fall back to Customer.law_firm_info_prompt.

intake_goalstring nullable

What to do after collecting info

additional_instructionsstring nullable

Extra rules or context

teaser_enabledboolean nullable

Whether to show a teaser message bubble

teaser_messagestring nullable

Teaser message text

teaser_delay_secondsinteger nullable

Seconds before teaser appears

show_online_statusboolean nullable

Whether to show online indicator

show_unread_badgeboolean nullable

Whether to show unread badge on bubble

tab_notification_enabledboolean nullable

Whether to flash unread count in tab title

avatar_urlstring nullable

URL of agent avatar image

avatar_video_urlstring nullable

URL of a silent looping video shown in place of the avatar image (header and launcher). Takes precedence over avatar_url.

avatar_video_in_headerboolean nullable

When false, the open panel's header shows the static avatar image and the avatar video only plays on the launcher bubble

launcher_avatar_enabledboolean nullable

When true (and avatar_url is set), the floating launcher shows the avatar image inside an accent-colored ring instead of the default chat bubble icon

intro_video_enabledboolean nullable

When true (and intro_video_url is set), opening the widget plays an intro video full-panel before transitioning into the chat

intro_video_urlstring nullable

URL of the intro video (mp4/webm) played when the widget opens

intro_video_autoplay_on_loadboolean nullable

When true, desktop visitors see the muted intro video playing in the widget corner on page load; when false it only plays after they click the launcher

attention_grabber_enabledboolean nullable

When true, a full-page modal asks visitors if they need help; Yes opens the chat directly, No dismisses it

attention_grabber_messagestring nullable

Question shown in the attention grabber modal

attention_grabber_delay_secondsinteger nullable

Seconds before the attention grabber modal appears (1-120)

idle_messagestring nullable

Message shown when visitor is idle

idle_delay_secondsinteger nullable

Seconds of inactivity before nudge (10-300)

quick_exit_enabledboolean nullable

Privacy Quick Exit: the widget never persists the chat across page loads — the conversation is ended and reset on browser close/refresh

mobile_bottom_offset_pxinteger nullable

Extra clearance in pixels between the widget and the bottom of the viewport on mobile (0-300). Null = none.

chat_idle_timeout_minutesinteger nullable

Minutes of inactivity before auto-completing a chat (1-60). Default: 10 minutes.

allowed_originsstring[] nullable

Allowed origins for CORS. When empty or null, any origin can embed the widget.

namestring nullable

Display label for the widget

is_defaultboolean nullable

Set to true to make this the customer's default widget. Setting false is not allowed — make another widget default instead.

Response

Successful Response

customer_idstring uuid required
enabledboolean required

Whether the chat widget is shown on the customer's website

accent_colorstring required

Primary color for the bubble, header, and assistant messages

secondary_colorstring nullable

Secondary accent color. When null, derived automatically from the accent color.

positionstring required

Where the chat bubble appears on the page (bottom-right or bottom-left)

greeting_messagestring required

The first message shown when a visitor opens the chat

assistant_namestring required

Displayed in the chat header

system_promptstring nullable

Full system prompt override. When set, replaces the assembled prompt entirely.

persona_promptstring nullable

Personality/tone instructions (e.g. 'You are Ashley, a warm and professional intake specialist')

law_firm_contextstring nullable

Firm-specific information injected into the prompt. Falls back to Customer.law_firm_info_prompt if not set.

intake_goalstring nullable

What to do after collecting info (e.g. 'Let them know an attorney will follow up within 24 hours')

additional_instructionsstring nullable

Extra rules or context for the AI assistant

teaser_enabledboolean

Whether to show a teaser message bubble next to the chat button

teaser_messagestring nullable

Teaser message text. Falls back to greeting_message if not set.

teaser_delay_secondsinteger

Seconds to wait before showing the teaser message

show_online_statusboolean

Whether to show an online indicator on the chat bubble and header

show_unread_badgeboolean

Whether to show an unread badge on the chat bubble

tab_notification_enabledboolean

Whether to flash unread count in the browser tab title

avatar_urlstring nullable

URL of the agent avatar image for the header and messages

avatar_video_urlstring nullable

URL of a silent looping video shown in place of the avatar image (header and launcher). Takes precedence over avatar_url.

avatar_video_in_headerboolean

When false, the open panel's header shows the static avatar image and the avatar video only plays on the launcher bubble

launcher_avatar_enabledboolean

When true (and avatar_url is set), the floating launcher shows the avatar image inside an accent-colored ring instead of the default chat bubble icon

intro_video_enabledboolean

When true (and intro_video_url is set), opening the widget plays an intro video full-panel before transitioning into the chat

intro_video_urlstring nullable

URL of the intro video (mp4/webm) played when the widget opens

intro_video_autoplay_on_loadboolean

When true, desktop visitors see the muted intro video playing in the widget corner on page load; when false it only plays after they click the launcher

attention_grabber_enabledboolean

When true, a full-page modal asks visitors if they need help; Yes opens the chat directly, No dismisses it

attention_grabber_messagestring nullable

Question shown in the attention grabber modal. Falls back to a default when not set.

attention_grabber_delay_secondsinteger

Seconds to wait before showing the attention grabber modal

idle_messagestring nullable

Message shown when visitor is idle. Leave empty to disable.

idle_delay_secondsinteger nullable

Seconds of inactivity before showing the idle nudge message

quick_exit_enabledboolean

Privacy Quick Exit: the widget never persists the chat across page loads — the conversation is ended and reset on browser close/refresh

mobile_bottom_offset_pxinteger nullable

Extra clearance in pixels between the widget and the bottom of the viewport on mobile, for sites with a fixed bottom bar. Null = none.

chat_idle_timeout_minutesinteger nullable

Minutes of inactivity before a chat is auto-completed. Default: 10 minutes.

allowed_originsstring[] nullable

Allowed origins for CORS. When empty or null, any origin can embed the widget.

chat_widget_idstring uuid required
namestring required

Display label for the widget

is_defaultboolean required

Whether this is the customer's default widget

Changes

No recorded changes to this endpoint across all 2 revisions of this API.