Reference
A single-page lookup for botts.ai — plan limits, what costs credits, supported file types, channels, data-residency tiers, the widget embed, HTTP tools and secrets, form fields, and an explicit list of what the platform does not do (yet).
Quick-reference tables that pull the hard numbers and rules together in one place. For the "why" and "how," follow the links into the full guides.
Plans and limits
New workspaces choose a plan right after signup. Personal starts with a 1-month free trial and Business with a 14-day free trial — no credit card required, one free trial per person. Prices are the same number in CHF, EUR, and USD; paying yearly is about 17% cheaper. Enterprise is custom and arranged with sales. The legacy Free and Lite plans are no longer offered to new customers; existing Lite organizations keep their plan.
| Personal | Business | Business Pro | Enterprise | |
|---|---|---|---|---|
| Price / month | 19 | 169 | 699 | Custom |
| Credits / month | 1,200 | 10,000 | 30,000 | Custom |
| Members | 1 | 3 | 8 | Unlimited |
| Agents (active) | 1 | 2 | 5 | Unlimited |
| Deployments (active) | 1 (internal chat) | 4 | 8 | Unlimited |
| Phone numbers | — | 1 | 2 | Custom |
| Knowledge-base pages | 800 | 4,000 | 12,000 | Unlimited |
| Upload storage (MB) | 200 | 1,000 | 2,500 | Unlimited |
The Personal plan includes the internal AI chat workspace only — deployments to external channels (website widget, phone) require Business or higher.
See Team & Billing for plan changes, credit blocks, and auto-recharge.
What costs credits
Everything an agent does is metered in credits. Plan credits are spent first, then purchased credits (earliest-expiring first).
| Activity | Cost |
|---|---|
| AI model usage (text) | Per ~1,000 words, in and out. The rate depends on the model (shown in the model picker). |
| Images in chat | Billed as input text at the model's rate: roughly 1,000 to 2,000 tokens per screenshot, on every turn where the image is still shown to the model (the last three messages, or when the agent looks at it again). |
| Voice / phone | Billed separately and higher than text: per second of call plus audio tokens in/out. |
| Website crawling | 1 credit per page (a "page" ≈ 2,000 characters of extracted text). |
| Embedding (indexing) | 0.01 credits per 1,000 tokens. |
| Web search | 0.10 credits per search. |
| Web page read | 1 credit each time the agent opens a page in full. |
| Scheduled task run | The same as running that conversation by hand. |
Note
A "page" is a unit of 2,000 characters of extracted text — used both for crawl billing and for your plan's knowledge-base page limit.
Supported file types and upload limits
| Type | Extensions |
|---|---|
.pdf | |
| Word | .doc, .docx |
| Text | .txt |
| Markdown | .md |
- Maximum 100 MB per file. Larger files are rejected before upload.
- Total upload storage is capped by your plan's Upload storage (MB) limit.
Chat attachments accept a wider set and a smaller size, because they are one-off documents rather than permanent agent knowledge:
| Knowledge base source | Chat attachment | Chat image | |
|---|---|---|---|
| Types | .pdf .doc .docx .txt .md | .pdf .docx .txt .md .html .json .csv .xlsx | .png .jpg .webp .gif |
| Max size | 100 MB | 25 MB | 10 MB, 10 per message, 25 per conversation |
| Retention | Until you delete it | Organization-wide setting, 1 week to forever | Same as chat attachments |
All three count towards the same Upload storage (MB) limit. Images are stored downscaled (long edge 1568 px) with camera metadata removed. See Attaching documents and Attaching images.
- A scanned or image-only PDF with no extractable text is accepted but shows as Skipped — it contributes no searchable content. Use a text-based PDF or paste the text as Markdown. See Knowledge Base.
Channels
| Channel | Status |
|---|---|
| Website chat widget | Live |
| Phone / voice agent | Live |
| Chat (Internal) — team | Live |
| Coming soon | |
| Telegram | Coming soon |
| Coming soon |
Full details in Deployments.
Data-residency tiers
Set per organization under My Organization → General → Server Location. The tier filters which AI models you can select. Switzerland counts as European but is not part of the EU.
| Tier | Models allowed |
|---|---|
| Swiss / Swiss | Swiss-hosted models from Swiss companies |
| Swiss / any | Swiss-hosted models, any provider |
| Europe / Europe | European-hosted models from European companies |
| Europe / any | European-hosted models, any provider |
| Global | No restriction (default) |
Platform infrastructure, knowledge-base storage, and chat history are in Switzerland (Infomaniak) regardless of tier. Voice telephony uses a US provider (Twilio). botts.ai does not train models on your data. See the FAQ and data-residency post.
Website widget embed
Each website deployment exposes a single script tag, pasted just before the closing </body> tag:
<script async src="https://YOUR-API-URL/widget/chat-widget.js?key=YOUR_API_KEY"></script>
- The
keyis the deployment's API key, prefixedbts_. The real URL and key are shown in the widget editor's Embed Code section — copy them from there. - Regenerating the key invalidates the old snippet everywhere it's embedded.
- Works on WordPress, Shopify, Squarespace, Wix, or plain HTML. See Deployments.
Connections and secrets
Connections let an agent call external systems. Configured under Integrations (Admin/Owner).
| Connection type | Where its tools come from |
|---|---|
| MCP server | Discovered from the remote server, imported by you |
| HTTP API | Endpoints you define under one base URL, or import from an OpenAPI spec URL (JSON or YAML) |
| Field | Values |
|---|---|
| Method | GET, POST, PUT, DELETE, PATCH |
| Authentication | None, Bearer, Basic, Custom Header, or Login Token |
| Auth scope | Organization-wide, or per user |
| Parameter types | string, number, integer, boolean |
| Parameter options | Required, fixed value, restricted to allowed values |
| Live timeout | 30 seconds |
| Pipeline steps | unwrap, project, search, sort, top, render |
- Reference a stored secret anywhere in the URL, headers, or auth with
$secret:key_name. GET/DELETEsend parameters as query string;POST/PUT/PATCHsend a JSON body. Path variables like{order_id}are percent-encoded and substituted.- A
2xxresponse body is passed to the model, capped at both ends if very large;4xx/5xxbodies are hidden (the model is told the status plus a hint not to invent data). Return200with a JSON body for "not found"-style answers. - Private, localhost, link-local, and cloud-metadata addresses are blocked, for MCP server URLs too.
- MCP tools are registered as
servername__toolname. A server that changes its tool list needs re-approval before the change takes effect.
Scheduled tasks
Personal recurring agent runs, under Scheduled in the sidebar. See Scheduled Tasks.
| Ownership | The account that created it. Not visible to other members, including Admins. |
| Who can create | Any role that can use chat, including Member |
| Runs | A deployed agent you can chat with, or a general-purpose model |
| Frequency | Daily, weekly (pick weekdays), or monthly (pick days 1–31), at a time in your timezone |
| Delivery | Email, or in botts.ai marked unread. Saved to a conversation either way. |
| Auto-pause | After 3 consecutive failures, with an email |
| No credits | The run is skipped, not queued or retried |
Form fields
Built-in lead-capture templates (enable per agent under Form / Lead Capture):
| Template | Fields (* = required) |
|---|---|
| Contact | name*, email*, phone, message |
| Support Ticket | subject*, description*, email*, priority (low/medium/high) |
| Booking Request | name*, email*, date*, service |
Custom fields use the same parameter types as tools — string, number, integer, boolean. One submission is captured per conversation; name/email/phone also fill the contact's empty profile fields. Submissions are viewable and exportable to CSV under each agent's Forms tab. See Agents.
What botts.ai doesn't do (yet)
So you (and any agent trained on these docs) don't assume a capability that isn't there:
- No third-party knowledge-base connectors. Knowledge-base sources are website crawl and file upload only. There is no Google Drive, Notion, Dropbox, SharePoint, or S3 sync. (An MCP server can let an agent query such a system live, which is a different thing from indexing it.)
- No public/customer API. There are no personal API keys or a general REST API for sending messages programmatically. The only keys are the per-deployment widget keys (
bts_), which authenticate the embedded chat widget on public channels. - No calendar or booking automation. The Booking Request form collects a requested date; it does not check availability or book anything. Use a connection to call your own scheduling API.
- No per-agent language selector. Agents reply in the language the user writes in; to pin a language, state it in the system prompt.
- No OAuth for connections yet. Connections authenticate with keys, headers, basic auth, or a login endpoint. Catalogue entries whose only login is OAuth are listed but disabled.
- No interactive voice failover. Phone deployments have no backup model.
- WhatsApp, Telegram, and Email channels are not available yet (Coming soon).
- No SSO/SAML or audit logs at this time.
- No automatic prompt optimization. Testing grades an agent's replies against your expectations; it does not rewrite the prompt, pick a model, or change the agent in any way.
Need one of these? It's often achievable today with a connection, or worth raising with support.
Things this list used to say
Removed because they now exist, in case you remember them as limits:
| Former limit | Now |
|---|---|
| No web browsing | Agents can search the web and read pages, optionally restricted to chosen domains |
| No conversation export | Export in JSON, CSV, or Excel, per message or per conversation |
| No document uploads in chat | Attach documents to a conversation and ask about them |
| No scheduled or unattended runs | Scheduled tasks run an agent on a timer |
| Tools are hand-written HTTP endpoints only | MCP servers and OpenAPI import |
Last updated on September 13, 2026