Create collections from your data
Create a collection from your Data Sources — crawled web pages or uploaded documents, added via the dashboard or the Management-key Data Sources API. It is stored and indexed for RAG so chatbots can query it.
The Chatbot service is the classic chatbot: no supervisor or sub-agents. You create a collection (knowledge base from URLs, documents, or text); that collection is registered and stored for you. Then you create chatbots linked to that collection and give each one instructions (system prompt). You open conversation sessions with those chatbots. In each session, user questions are matched against the collection using RAG; we retrieve the relevant chunks. When the question fits your rules, an LLM generates the answer and we return it via REST or SSE streaming. One collection, one or more chatbots, many sessions — simple and predictable.
Learn more about ChatbotA chatbot isn't a one-shot model run — you create it once, connect your knowledge base, and it answers grounded in your own content. Then a single API call puts it in your product.
Create a chatbot and connect your knowledge base
Tune the persona and test it live in the dashboard
Call it from your app with core-chat and your API key
No account yet? Start free — 100 credits, no card.
The Chatbot service is the classic chatbot: no supervisor or sub-agents. You create a collection (knowledge base from URLs, documents, or text); that collection is registered and stored for you. Then you create chatbots linked to that collection and give each one instructions (system prompt). You open conversation sessions with those chatbots. In each session, user questions are matched against the collection using RAG; we retrieve the relevant chunks. When the question fits your rules, an LLM generates the answer and we return it via REST or SSE streaming. One collection, one or more chatbots, many sessions — simple and predictable.
Create a collection from your Data Sources — crawled web pages or uploaded documents, added via the dashboard or the Management-key Data Sources API. It is stored and indexed for RAG so chatbots can query it.
Create chatbots tied to one or more collections. Set system_message (instructions) per chatbot to define behavior, tone, and boundaries.
Each chat call opens or continues a conversation. Pass conversation_id to continue an existing thread; omit it for a new conversation. List, inspect, or delete sessions.
Questions are grounded in the collection via RAG; retrieved sources are returned in enhanced_analysis. The LLM answers and you get the response in one shot (REST) or as a stream (SSE, set stream:true).
Customer support bot
Build a collection from help center / FAQ; create a chatbot with support instructions; open conversation sessions per user. Answers are grounded in your docs via RAG, returned as REST or SSE.
Internal knowledge base
Index company docs and SOPs in a collection; chatbots with clear system_message serve employees. Sessions keep context; RAG + LLM answers within your rules.
Product or e-commerce assistant
Collection from product catalogs and reviews; chatbots linked to it. Sessions per user; RAG retrieves relevant items; LLM answers.
Education or onboarding
Course or onboarding content in a collection; chatbots with instructions and sessions. Questions answered from the collection within your rules.
input
Collection sources (URLs or documents), chatbot configuration (system_message, temperature, model), conversation_id, and chat messages
output
LLM-generated response grounded in collection via RAG, with enhanced_analysis (relevance scores, sources); REST or SSE
core-chat): simplest integration, full response at once. Best for server-to-server, webhooks, or batch workflows.core-chat with stream:true): tokens arrive as they're generated for a typing-effect UX. Same endpoint, just add "stream": true.collection_id (cl_ prefix). Use this in details / update / delete and as the value of collection_ids when creating or updating a chatbot.chatbot_key (cb_ prefix). Use as path parameter for chatbot endpoints. The chat endpoint takes it under the request body field `chatbot_id` — same value, different field name. (Just a naming difference to be aware of.)conversation_key (cv_ prefix). Pass back to chat as conversation_id (or conversation_key) to continue.chatbot_idrequiredstringChatbot identifier (cb_-prefixed value from chatbot_key). NOTE: field name is chatbot_id even though the value is what create returns as chatbot_key.
messagerequiredstringUser message
conversation_idstringPass an existing conversation_key (cv_ prefix) to continue a conversation. Omit or null to start a new one.
streamboolean · default: falseSet true to receive the response as SSE (OpenAI-compatible).
data.conversation_keystringConversation identifier (cv_ prefix). Pass back as conversation_id to continue.
data.responsestringAssistant reply text.
data.enhanced_analysisobjectRAG retrieval breakdown — { source_count, content_types, dominant_content_type, scoring_method, is_enhanced, relevance_scores: [{ content_id, content_type, relevance_score, match_count, title, url, source, summary, sections_count }] }.
Pay only for what you use. Listing and management read operations are free.
| Service | Unit | Price |
|---|---|---|
| Create / Update Collection | item | $1.0/operation |
| Create Chatbot | item | $1.0/chatbot |
| Update Chatbot | item | $0.5/update |
| Chat (REST or SSE) | token | 2 credits per 1K tokens (typical message 1-2 credits) |
| List, Get, Delete operations | item | Free |
core-chat streaming bills per token (2 credits per 1K); non-streaming calls currently bill a negligible flat amount until token metering lands there too.
Long conversations include previous messages as RAG context, so the underlying model does more work as a thread grows — even though the billed amount stays flat for now.
Agent
Chatbot has no supervisor or sub-agents. For routing, multi-step flows, and tool calling, use Agent.
LLM Completions
Want direct LLM access without RAG or sessions? Use LLM Completions for raw model access.
Question Answering
For one-off question-answering without building a chatbot or collections, use the Text QA service.