Documentation
Docs
Learn
Release Notes
  • English
  • Українська
Docs
Learn
Release Notes
  • English
  • Українська
  • Getting Started

    • ConnectiveOne Documentation
  • Channel Configuration

    • Channels

      • Integrator — Channels Configuration Hub
      • Explanations

        • What is ConnectiveOne Widget
        • Widget JavaScript API
      • Instructions

        • How to Configure IP Blocking Message?
        • How to Configure Widget in Settings
        • How to Connect Facebook Messenger and Instagram to ConnectiveOne
        • How to Connect Gmail to ConnectiveOne
        • How to Connect Outlook to ConnectiveOne
        • How to Connect Telegram to ConnectiveOne
        • How to Connect Numbered Viber, Telegram, and WhatsApp via e-chat
        • How to Connect Viber to ConnectiveOne
        • How to Connect WhatsApp to ConnectiveOne
        • How to Customize Widget Colors
        • How to Manage Widget from Website
        • How to Pass Parameters from Website to Scenario
        • How to Configure Sending SMS via Alpha SMS
        • How to Configure Sending Viber/SMS via Infobip
        • How to Connect Widget to Website
        • How to Use Custom Code for Widget
        • How to Work with Widget on SPA Applications
  • Request Processing

    • Operator Panel (OperatorLine)

      • Operator — OperatorLine Scenarios Hub
      • Supervisor — OperatorLine Scenarios Hub
      • Administrator — OperatorLine Scenarios Hub
      • Integrator — Operator Panel Hub for OperatorLine
      • Explanations

        • About Processing Requests in ConnectiveOne
        • About Auto-Distribution of Dialogs Between Operators
        • About Automatic Connection of Free Operator to New Dialog
        • About Connecting Chat with Operator Through Operator Panel
        • HEIC/HEIF image support (photos from iPhone)
        • About Redistribution of Chats from Operator
      • Instructions

        • Change Request Status
        • Create Filter
        • Create Folder
        • Create Outbound Request
        • How to Create a Ticket?
        • How to Download Attachments from the Dialog?
        • How to export a chat to PDF?
        • How to Link Tickets to Each Other?
        • Manage Folders
        • How to Edit Ticket Fields?
        • How to Manage Ticket Watchers?
        • Monitor Operator Statuses
        • Open Request
        • Reorder Folders
        • How to Reply to a Client?
        • Set Topic and Tags
        • Use Copilot
        • Use Quick Replies
        • How to View Active Dialogs in Client Card?
        • View Chat List
        • View Chats in Table
        • View Request Queue
        • How to View Ticket Logs?
        • How to View Ticket SLA Metrics?
    • Profile

      • Operator — Profile Scenarios Hub
      • Administrator — Profile Scenarios Hub
      • Instructions

        • How to Change Interface Language?
        • Configure Folders
        • Configure Notifications
        • Configure Quick Replies
        • Configure Signature
    • BroadcastUsers (Clients)

      • Operator — BroadcastUsers Scenarios Hub
      • Integrator — BroadcastUsers Scenarios Hub
      • Administrator — BroadcastUsers Scenarios Hub
      • Instructions

        • Create Segment by Filters
        • Edit Client Data
        • Export Client Data
        • Filter Clients
        • Manage Subscription
        • How to Find a Client?
        • Search Clients by File
        • Send Broadcast to Selected Clients
        • How to View a Client Card?
        • View Client Channels
  • Broadcasts

    • Broadcast

      • Operator — Broadcast Hub
      • Integrator — Broadcast Settings Hub
      • Analyst — Broadcast Analytics Hub
      • Instructions

        • How to Activate a Scheduled Broadcast?
        • How to Add Images to Broadcasts?
        • How to Check Broadcast Status?
        • How to Configure an Automatic Broadcast?
        • How to Configure Alias in Broadcasts?
        • How to Configure Broadcast Limits?
        • How to Create a Broadcast Template?
        • How to Create a Broadcast?
        • How to Create a Broadcast Topic?
        • How to Deactivate a Broadcast Topic?
        • How to Edit a Broadcast Draft?
        • How to Edit a Broadcast Topic?
        • How to Export Broadcast Results to Excel?
        • How to Format Messages in Broadcasts?
        • How to Launch a Broadcast Immediately?
        • How to Save a Broadcast as a Draft?
        • How to Find Contacts by File?
        • How to Send a Broadcast from the Clients Module?
        • How to Configure a Scheduled Broadcast?
        • How to Configure Subscription to Broadcast Topics?
        • How to View a Broadcast Report?
        • How to View Broadcast Results?
        • How to View Click Statistics?
        • How to View Delivery Statistics?
        • How to View Open Statistics?
  • Automation

    • Scenario Builder

      • Scenario Builder — Integrator Hub
      • Instructions

        • How to add translations to a scenario in Scenario Builder
        • How to create a new bot scenario in Scenario Builder
        • How to create a scenario section in Scenario Builder
        • How to edit a scenario in Scenario Builder
        • How to export and import a scenario in Scenario Builder
        • How to test a scenario in Scenario Builder
        • How to use an action in a Scenario Builder scenario
        • How to view scenario version history in Scenario Builder
    • Scenario Dialog (Legacy)

      • Integrator — Scenario Dialog Scenarios Hub (Legacy)
      • Explanations

        • Actions in Scenarios — What They Are and How They Work
        • About Using autobroadcast__create Action in Scenarios
        • About Copying Existing Bot Scenario
        • About ConnectiveOne Integration with Corezoid Through Operator Panel
        • About Displaying Images to User
        • About Email Categorization Using AI
        • About Facebook Ads Referral Tags
        • About Launching Scenario from Facebook Ads
        • About HTML Text Formatting in Telegram and Widget
        • About Inline Keyboard in Telegram and Widget
        • About Configuring Alias for Outgoing Dialog
        • About Payment via Bot
        • About Telegram Group Bots
        • About Telegram WebApp in Scenarios
        • About Viber Keyboard Styling
        • About Viber Start Message
      • Instructions

        • How to Add Translations to a Scenario?
        • How to Create a New Bot Scenario?
        • How to Create a Scenario Section?
        • How to Edit an Existing Bot Scenario?
        • How to Export or Import a Scenario?
        • How to Use an Action in a Scenario?
        • How to View and Restore Scenario Versions?
    • ActionJail

      • Operator — ActionJail Scenarios Hub
      • Instructions

        • How to Create and Maintain an Action in ActionJail (Administrator)
        • How to Clone an Action in ActionJail
        • How to Quickly Find an Action in ActionJail
        • How to Connect an ActionJail Action to a Bot Scenario (Integrator)
      • Reference

        • Actions Reference — Actions Guide
    • Integrations

      • Integrator — ConnectiveOne Integrations Hub
      • Explanations

        • Launch Scenario via Deeplink
        • Transfer UTM Tags Through Messages
        • What are ConnectiveOne Integrations
      • Instructions

        • How to Integrate Operator Panel as Widget in CRM/ERP
        • How to Configure Product Name for Zoho CRM
        • How to Integrate External System via Custom Channel
        • How to Get Data from API Using send_request
        • How to Send Data from ConnectiveOne via send_request
        • How to Configure User Subscription to Notifications
        • How to Launch Bot Scenario via API call_node
        • How to Integrate ConnectiveOne with eSputnik
        • How to Send Phone Broadcast via Route
        • How to Use ConnectiveOne API
        • How to Configure Operator Panel Webhook
      • Reference

        • API Reference — ConnectiveOne API Reference
    • Custom Data

      • Integrator — Custom Data Scenarios Hub
      • Administrator — Custom Data Scenarios Hub
      • Analyst — Custom Data Scenarios Hub
      • Instructions

        • Add Field to Model
        • How to Configure Field Display in Custom Data?
        • Configure Field Type
        • How to Create an Association Between Tables in Custom Data?
        • Create Group
        • How to Create a Data Model?
        • Edit Model
        • Export Filtered Data
        • How to Export Model Data?
        • How to Extend Client Contacts Table Through Custom Data?
        • How to Find Records by Filters?
        • Import Data from File
        • How to Save Data from Scenario to Custom Data?
        • Sort Records
        • How to Use AI Magic to Create Custom Data Models?
        • How to Use custom_modules__get Action to Get a Record?
        • How to Use Autocomplete Search in Custom Data?
        • How to Use custom_modules__set Action to Create a Record?
        • Validate Data
        • View Model Records
    • FileManager

      • Operator — FileManager Scenarios Hub
      • Instructions

        • How to Create a Jira Task with a File?
        • How to Delete a File or Folder?
        • How to Navigate to a Folder?
        • How to Upload a New File?
        • How to View the File List?
  • Artificial Intelligence

    • FastLinePro

      • Integrator — FastLinePro Scenarios Hub
      • Administrator — FastLinePro Scenarios Hub
      • Instructions

        • Activate KB Plugin
        • How to Check AI Agent Response in Scenario?
        • Check Synchronization Status
        • Configure Agent Prompt
        • How to Configure Agent Variables in FastLinePro?
        • How to Configure Chunking in FastLinePro Knowledge Base?
        • Configure KB Plugin Synchronization
        • Configure Knowledge Synchronization
        • How to Connect Knowledge Base to AI Agent in FastLinePro?
        • Create Agent
        • How to Create a Chatbot?
        • How to Create a Knowledge Base?
        • Deactivate KB Plugin
        • How to Generate Gemini API Key for FastLine Pro
        • How to Prepare a File for FastLinePro Knowledge Base?
        • Run KB Synchronization
        • Update KB Files
        • Upload Files to KB
        • How to Use action_fastline_pro Action in Scenario?
    • Quality Assurance

      • Supervisor — Quality Assurance Scenarios Hub
      • Administrator — Quality Assurance Scenarios Hub
      • Analyst — Quality Assurance Scenarios Hub
      • Instructions

        • How to Adjust AI Assessment Criteria?
        • How to Approve Assessment?
        • Assess Request
        • Conduct Quality Check
        • How to Create a New Dialogue Assessment?
        • Export Assessments
        • Filter Assessments
        • Use Checklist
        • View Assessment Details
        • How to View Assessments List and Find the Needed One?
        • View Quality Dashboard
        • View Quality Reports
  • Statistics

    • Statistics

      • Supervisor — Statistics Scenarios Hub
      • Administrator — Statistics Scenarios Hub
      • Analyst — Statistics Scenarios Hub
      • Instructions

        • Apply Filters to Report
        • How to Configure CSAT (Customer Satisfaction) in Statistics?
        • How to Create and Configure a Funnel in Statistics?
        • Create Detailed Report
        • Create Funnel
        • Export Report
        • How to Export Statistics Data?
        • Set Target Metrics
        • View Daily Report
        • View Dashboard
        • How to View Metabase Dashboards in Statistics Module?
        • How to View Operator Schedule in Statistics?
        • View Shift Report
      • Reference

        • Statistics Metrics — Reference
  • Administration

    • Settings

      • Supervisor — Operator Panel Settings Hub
      • Administrator — System Settings Hub
      • Instructions

        • How to Activate or Deactivate a Bot?
        • How to Configure Authentication and Access Management?
        • How to Configure a Bot?
        • How to Configure Operator Calendars?
        • How to Configure Chat Parameters?
        • How to Configure Client Card Fields?
        • How to Configure Client Fields?
        • How to configure email templates (header and footer)?
        • How to Configure File Parameters?
        • How to Configure Hot Keys?
        • How to Configure Instance Parameters?
        • How to Configure Operators in Chats?
        • How to Configure Roles and Access Rights?
        • How to Configure Styles and Scripts?
        • How to Configure Ticket Topics?
        • How to Configure General System Settings?
        • How to Configure Ticket Parameters?
        • How to Configure Timers for Chats?
        • How to Configure User Fields?
        • How to Create a New Bot?
        • How to View Bots List?
        • How to View System Status?
        • How to View Users List?
      • Reference

        • What Are Server Requirements for Hosting ConnectiveOne?
    • Access Recovery

      • Access Recovery — Scenarios Hub
      • Instructions

        • How to Enable Password Recovery Flow (Administrator)
        • How to Generate a Password Reset Link Manually (Administrator)
        • How to Reset Password Through "Forgot Password?"
  1. Docs
  2. /Channels
  3. /How To
  4. /How to Customize Widget Colors

How to Customize Widget Colors

ConnectiveOne widget allows full customization of the color scheme to match your website branding. Colors can be configured through a visual constructor or programmatically through JavaScript.


Color Configuration Methods

Method 1: Visual Constructor (Widget Demo)

  1. Go to Widget Demo (/widget/{locale}/?bot-id={bot_id})
  2. Configure colors through the visual interface
  3. Copy the generated code with the color parameter

Method 2: color Parameter During Initialization

Pass colors through the color parameter during widget initialization:

kw('init', {
  bot_id: 1,
  color: {
    header: {
      bg: "#5B6BFF",
      text: "#ffffff",
      border: "#E4E4E4",
      dot: "#B8A6EE"
    },
    device: {
      container: "#594DA0",
      bg: "#734FE1",
      border: "#E4E4E4",
      dot: "#B8A6EE"
    },
    userInput: {
      bg: "#594DA0",
      text: "#FFFFFF",
      border: "transparent"
    },
    keyboardButton: {
      border: "#BB0044",
      bg: "#BB0044",
      text: "#FFFFFF"
    },
    inlineKeyboardButton: {
      bg: "#BB0044"
    }
  }
});

Method 3: Change During Operation

Change colors during widget operation:

kw_event('kwcolor', {
  header: {
    bg: "#FF0000",
    text: "#ffffff"
  }
});

Customizable Elements

header (chat header)

  • bg — header background
  • text — text color
  • border — border color
  • dot — indicator color

device (device frame)

  • container — container background
  • bg — frame background
  • border — border color
  • dot — indicator color

userInput (input field)

  • bg — field background
  • text — text color
  • border — border color
  • icon_color — icon color

keyboardButton (keyboard buttons)

  • bg — button background
  • border — border color
  • text — text color

inlineKeyboardButton (inline buttons)

  • bg — button background
  • text — text color
  • bgc — hover color

sentMessage (sent messages)

  • bg — message background
  • text — text color

receivedMessage (received messages)

  • bg — message background
  • text — text color

Using Gradients

You can use gradients and other CSS values:

kw('init', {
  bot_id: 1,
  color: {
    header: {
      bg: "linear-gradient(130deg, #734FE1, #D14EE0)"
    }
  }
});

All CSS values are supported: hex, rgb, rgba, linear-gradient, etc.


Customization Through CSS Classes

You can add CSS classes to buttons for additional styling:

General class for all buttons:

In the "Message with keyboard" block, specify:

{
  "widget_buttons_class": "GENERAL_CLASS_NAME"
}

Class for specific button:

In the button object, specify:

{
  "text": "Button",
  "json": {
    "widget_button_class": "BUTTON_CLASS_NAME"
  }
}

Then add CSS styles on your website:

.GENERAL_CLASS_NAME {
  border-radius: 10px;
  font-weight: bold;
}

.BUTTON_CLASS_NAME {
  background-color: #FF0000;
}

Limitations

  • If displayMode === 'frame', colors are automatically removed from initialization parameters
  • If colors are not specified, default values are used
  • Colors are merged with existing ones through merge, so you can change only part of the colors

Related Articles

  • What is a widget
  • Connect widget to website
  • Configure widget in Settings
  • Widget JavaScript API
Prev
How to Connect WhatsApp to ConnectiveOne
Next
How to Manage Widget from Website

On this page