Skip to main content
The C1Chat component is a React component that allows you to build conversational AI interfaces with C1. It renders a full chat interface with a sidebar, composer, user and agent messages. You can customize the C1Chat component to your needs through the following props:

Props

string
optional
The API endpoint URL that handles the API calls made with each user message. If provided, the C1Chat component automatically handles the API calls to the backend. If not provided, you will need to manually implement and pass the threadManager and threadListManager.
ThreadManager
optional
Manager for handling thread-related operations and state. The easiest way to create this is through the useThreadManager hook.
ThreadListManager
optional
Manager for handling thread list operations and state. The easiest way to create this is through the useThreadListManager hook.
(params: ProcessMessageParams) => Promise<Response>
optional
Function to process messages and handle the conversation flow.
'copilot' | 'standalone'
optional
deprecated
Deprecated: Use formFactor instead. Defines the display type of the chat component.
'full-page' | 'side-panel' | 'bottom-tray'
optional
Defines the form factor and layout of the chat component. Use 'full-page' for a fullscreen chat interface, 'side-panel' for a sidebar-style layout, or 'bottom-tray' for a collapsible tray at the bottom of the page.When formFactor is set to 'bottom-tray', the following additional props are available:
ThemeProps
optional
deprecated
Deprecated: Wrap C1Chat with ThemeProvider instead of passing theme here.Theme configuration object for customizing the appearance of the chat component.
string
optional
The name of the AI agent that will be displayed in the chat interface.
string
optional
URL for the agent’s logo image. This is displayed alongside the agent’s messages in the chat.
'once' | 'user-message-anchor' | 'always'
optional
Controls the scrolling behavior of the chat interface. 'once' scrolls once per interaction, 'user-message-anchor' anchors to user messages, and 'always' maintains continuous scrolling.
CustomizeC1Props
optional
Provide custom components and configuration to override the default behavior and components in the C1 UI.
boolean
optional
When set to true, disables the built-in ThemeProvider wrapping. Useful when you are providing your own ThemeProvider higher up in the component tree.
Function that generates a shareable link for the current conversation thread. When provided, a share button is shown in the chat interface.
Function that generates a shareable link for a specific artifact. When provided, a share button is shown on artifacts.
(event: C1Action) => void
optional
Callback invoked when a user triggers an action in the chat interface (e.g. clicking a button in a generated UI component).
WelcomeMessageConfig
optional
Welcome message shown when the thread is empty.Can be either a props object with title, description, and optional image, or a custom React component that will be wrapped with WelcomeScreen for styling.
ConversationStartersConfig
optional
Conversation starters shown when the thread is empty. Clickable prompts that help users begin a conversation with predefined options.