Portals
ChatBotKit Portals provide a powerful way to configure and package ChatBotKit's internal applications, also known as apps, into independent websites with custom domains and configurations. This feature allows you to create dedicated experiences for your users, tailored to their specific needs.
Applications
ChatBotKit has several internal applications that can be used independently from the dashboard:
- Algo: A ChatGPT-like general-purpose AI chat experience with a growing list of models to choose from.
- Colabo: An app that allows users to interact with multiple AI agents in the same canvas.
- ReadAround: An app used to ask questions about PDF documents and other support material.
- Inbox: An app that displays all conversations in a user-friendly format for exploration and review.
Portals
Portals provide a way to configure these applications and package them into independent websites with custom domains and configurations. This allows you to create dedicated experiences for specific user groups or use cases.
Examples
- Customer Support Portal: If you use the ChatBotKit Widget on your website to support your customers, you can create a dedicated portal for your support team to access the Inbox application. This allows them to review customer conversations periodically, with access limited to specific users.
- Team of Experts and Bots: If you have multiple agents created for work-related activities, you can assemble your own team of experts and bots to perform tasks for you. By exposing these agents in a portal, your users can log in and interact with them, which is perfect for sales and marketing teams.
- All-in-One Portal: You can package all applications together in a single portal, exposing either a single application or multiple applications, and grant access to specific users as needed.
General Configuration
To configure a portal, you need to write a config object. The default config object looks like this:
apps: colabo: {} inbox: {} users: user@chatbotkit.com: {} '*@chatbotkit.com': {}
- The
apps
object defines the exposed applications, each with its own properties. - The
users
object defines the users who have access to the portal. You can allow individual users or use wildcards to grant access to multiple users.
Layout
The layout
object allows you to customize the portal's appearance and behavior. It includes options for configuring the footer, header, and other visual elements of the portal interface.
apps: colabo: {} inbox: {} users: user@chatbotkit.com: {} '*@chatbotkit.com': {} layout: footer: privacy: https://... terms: https://... madeWith: false
The footer properties allow you to customize the footer section of your portal:
- privacy: A URL to your privacy policy. When set, adds a "Privacy Policy" link to the footer.
- terms: A URL to your terms of service. When set, adds a "Terms of Service" link to the footer.
- madeWith: A boolean that controls the visibility of the "Made with ChatBotKit" footer text. Set to
false
to hide this text.
App-Specific Configuration
Different apps have their own configuration options:
Colabo
The Colabo app contains a list of exposed bots that users can interact with:
apps: colabo: bots: - the_id_of_your_first_bot - the_id_of_your_second_bot users: user@chatbotkit.com: {} '*@chatbotkit.com': {}
Colabo can also contain a list of initial messages to help users perform common tasks:
apps: colabo: bots: - the_id_of_your_first_bot - the_id_of_your_second_bot initial: - @bot first message - @bot second message users: user@chatbotkit.com: {} '*@chatbotkit.com': {}
The Colabo app can be customized with additional properties to change its name and description:
apps: colabo: bots: - the_id_of_your_first_bot - the_id_of_your_second_bot initial: - @bot first message - @bot second message name: Custom App Name description: A detailed description of your custom Colabo instance users: user@chatbotkit.com: {} '*@chatbotkit.com': {}
FAQ
How can I set up a custom domain for my portal?
ChatBotKit supports custom domains for portals. To set up a custom domain for your portal, please contact our support team. We'll guide you through the process and help you configure your domain settings correctly.
What configuration options are available beyond those listed in the documentation?
While we've covered the main configuration options in this documentation, there are additional customization possibilities available depending on your specific needs. These may include advanced layout options, custom authentication methods, and specialized integrations. Please reach out to our team to discuss your requirements, and we'll be happy to provide guidance on the best configuration for your use case.
Can I create multiple portals with different configurations?
Yes, you can create multiple portals, each with its own unique configuration, user access settings, and domain. This is particularly useful when you need to create separate environments for different teams or purposes. Contact us to discuss your specific requirements and we'll help you set up the optimal portal structure.