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
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
Manager for handling thread-related operations and state. The easiest way to create this is through the useThreadManager hook.
ThreadListManager
Manager for handling thread list operations and state. The easiest way to create this is through the useThreadListManager hook.
(params: ProcessMessageParams) => Promise<Response>
Function to process messages and handle the conversation flow.
'copilot' | 'standalone'
Deprecated: Use formFactor instead. Defines the display type of the chat component.
'full-page' | 'side-panel' | 'bottom-tray'
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
Deprecated: Wrap C1Chat with ThemeProvider instead of passing theme here.Theme configuration object for customizing the appearance of the chat component.
string
The name of the AI agent that will be displayed in the chat interface.
string
URL for the agent’s logo image. This is displayed alongside the agent’s messages in the chat.
'once' | 'user-message-anchor' | 'always'
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
Provide custom components and configuration to override the default behavior and components in the C1 UI.
boolean
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
Callback invoked when a user triggers an action in the chat interface (e.g. clicking a button in a generated UI component).
WelcomeMessageConfig
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
Conversation starters shown when the thread is empty. Clickable prompts that help users begin a conversation with predefined options.