# ChatBotKit > ChatBotKit is a state-of-the-art platform for building and deploying advanced conversational AI systems. It offers a modular approach with intuitive components, supporting multiple AI models from various vendors, and provides comprehensive tools for creating smart chatbots, AI agents, and autonomous assistants. ChatBotKit enables developers to create sophisticated conversational AI applications through a comprehensive suite of tools and APIs. The platform supports natural language processing, multi-model integration, RAG (Retrieval-Augmented Generation), and seamless deployment across multiple channels including web widgets, Slack, Discord, WhatsApp, and more. Key capabilities include: - Multi-model support (OpenAI, Anthropic, Google, Meta, and more) - Dataset integration (PDF, DOCX, CSV, JSON, text files) - Skillsets for extending bot capabilities with custom functions - Conversational memory and context management - Advanced security features and GDPR compliance - Partner API for white-label and multi-tenant applications ## Content Indexes - [Documentation Index](https://chatbotkit.com/docs/index.md): Complete list of all documentation articles - [Manuals Index](https://chatbotkit.com/manuals/index.md): Complete list of all technical manuals - [Tutorials Index](https://chatbotkit.com/tutorials/index.md): Complete list of all tutorials ## Getting Started - [Introduction](https://chatbotkit.com/docs/introduction.md): Core concepts including backstories, models, datasets, skillsets, and integrations - [API Documentation](https://chatbotkit.com/docs/api.md): Comprehensive API reference with authentication and endpoint details - [API Specification](https://chatbotkit.com/api/v1/spec.json): Full OpenAPI v3 specification for the ChatBotKit API ## Core Concepts - [Backstories](https://chatbotkit.com/docs/backstories.md): Defining bot personality, context, and capabilities - [Models](https://chatbotkit.com/docs/models.md): Understanding and selecting AI models - [Bots](https://chatbotkit.com/docs/bots.md): Creating and managing conversational AI bots - [Datasets](https://chatbotkit.com/docs/datasets.md): Managing knowledge bases and training data - [Skillsets](https://chatbotkit.com/docs/skillsets.md): Extending bots with custom abilities and function calling - [Conversations](https://chatbotkit.com/docs/conversations.md): Managing user interactions and session state ## Manuals - Technical Reference Documentation Comprehensive technical manuals provide detailed reference documentation for all platform features and capabilities: - [Introduction](https://chatbotkit.com/manuals/introduction.md): Getting started with ChatBotKit platform - [Authentication](https://chatbotkit.com/manuals/authentication.md): API authentication methods and security - [Bots](https://chatbotkit.com/manuals/bots.md): Complete bot configuration and management reference - [Datasets](https://chatbotkit.com/manuals/datasets.md): Dataset creation, file management, and search operations - [Skillsets](https://chatbotkit.com/manuals/skillsets.md): Building and managing skillsets with abilities - [Blueprints](https://chatbotkit.com/manuals/blueprints.md): Creating reusable AI agent templates - [Agents](https://chatbotkit.com/manuals/agents.md): Building and deploying intelligent AI agents - [Conversations](https://chatbotkit.com/manuals/conversations.md): Managing conversation state and messages - [Node.js SDK](https://chatbotkit.com/manuals/node-sdk.md): Official Node.js SDK documentation - [Agent SDK](https://chatbotkit.com/manuals/agent-sdk.md): Official Agent SDK documentation - [React SDK](https://chatbotkit.com/manuals/react-sdk.md): React components and hooks reference - [Next SDK](https://chatbotkit.com/manuals/next-sdk.md): Next.js integration documentation ## REST API for Content Discovery ChatBotKit provides REST API endpoints for programmatically discovering and accessing documentation and manuals: ### List Available Manuals ``` GET https://chatbotkit.com/api/v1/platform/manual/list ``` Returns a complete list of available technical manuals with metadata including: - Manual ID, title, and description - Category and tags for filtering - Creation and update timestamps - Display order index Example response structure: ```json { "items": [ { "id": "introduction", "name": "Introduction", "description": "Getting started with ChatBotKit", "category": null, "tags": [], "index": 1, "createdAt": 1696118400000, "updatedAt": 1696118400000 } ] } ``` ### Fetch Individual Manual ``` GET https://chatbotkit.com/api/v1/platform/manual/{manualId}/fetch ``` Retrieves the full content of a specific manual by ID. For example, to fetch the "datasets" manual: ``` GET https://chatbotkit.com/api/v1/platform/manual/datasets/fetch ``` ### Search Manuals Performs semantic search across all manuals using vector embeddings. Returns ranked results with similarity scores. ``` POST https://chatbotkit.com/api/v1/platform/manual/search Content-Type: application/json { "search": "your search query" } ``` Response includes similarity scores for ranking search results (top 10 results returned). ### List Available Docs ``` GET https://chatbotkit.com/api/v1/platform/doc/list ``` Returns a complete list of available documentation articles with similar metadata structure. ### Fetch Individual Doc ``` GET https://chatbotkit.com/api/v1/platform/doc/{docId}/fetch ``` Retrieves the full content of a specific documentation article by ID. For example, to fetch the "datasets" doc: ``` GET https://chatbotkit.com/api/v1/platform/doc/datasets/fetch ``` ### Search Docs Performs semantic search across all documentation using vector embeddings. Returns ranked results with similarity scores. ``` POST https://chatbotkit.com/api/v1/platform/doc/search Content-Type: application/json { "search": "your search query" } ``` Response includes similarity scores for ranking search results (top 10 results returned). ### List Available Tutorials ``` GET https://chatbotkit.com/api/v1/platform/tutorial/list ``` Returns a complete list of available tutorials with similar metadata structure. ### Fetch Individual Tutorial ``` GET https://chatbotkit.com/api/v1/platform/tutorial/{tutorialId}/fetch ``` Retrieves the full content of a specific tutorial by ID. For example, to fetch a specific tutorial: ``` GET https://chatbotkit.com/api/v1/platform/tutorial/getting-started/fetch ``` ### Search Tutorials Performs semantic search across all tutorials using vector embeddings. Returns ranked results with similarity scores. ``` POST https://chatbotkit.com/api/v1/platform/tutorial/search Content-Type: application/json { "search": "your search query" } ``` Response includes similarity scores for ranking search results (top 10 results returned). ## SDKs and Integration - [Node.js SDK](https://chatbotkit.com/docs/node-sdk.md): Official SDK for Node.js applications - [Agent SDK](https://chatbotkit.com/docs/agent-sdk.md): Official SDK for building AI agents - [React SDK](https://chatbotkit.com/docs/react-sdk.md): React components and hooks for building conversational AI interfaces - [Next.js SDK](https://chatbotkit.com/docs/next-sdk.md): Server and client components for Next.js applications - [NextAuth SDK](https://chatbotkit.com/docs/nextauth-sdk.md): Authentication integration for Next.js - [Widget SDK](https://chatbotkit.com/docs/widget-sdk.md): Embeddable chat widget for any website ## Optional - [Type Documentation](https://chatbotkit.github.io/node-sdk/llms.txt: Full TypeScript definitions - [GitHub Repository](https://github.com/chatbotkit/node-sdk): Source code and examples (see https://raw.githubusercontent.com/chatbotkit/node-sdk/refs/heads/main/README.md) - [Changelog](https://chatbotkit.com/changelog): Latest updates and releases - [Discord Community](https://go.cbk.ai/discord): Connect with other developers