botts.aiDocs

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 (150 starter credits) and Business with a 14-day free trial (1,500 starter credits), no credit card required, one free trial per person. To get the full monthly credits right away, choose Pay now instead, without the trial. 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.

PersonalBusinessBusiness ProEnterprise
Price / month19169699Custom
Credits / month1,20010,00030,000Custom
Members138Unlimited
Agents (active)125Unlimited
Deployments (active)1 (internal chat)48Unlimited
Phone numbersNone12Custom
Knowledge-base pages8004,00012,000Unlimited
Upload storage (MB)2001,0002,500Unlimited

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).

ActivityCost
AI model usage (text)Per ~1,000 words, in and out. The rate depends on the model (shown in the model picker). Input the provider serves from its cache is billed at the model's separate, usually lower Cached rate and appears as AI Cached in Recent Activity on the Usage page.
Images in chatBilled 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 (images on your last three messages, or when the agent looks at an older one again).
Voice (phone, website widget)Billed separately and higher than text: per minute of voice on GPT Live 1, plus the tokens of the text model that runs the agent's tools. Recording a new greeting clip after a welcome-message change is billed like a short call.
Speech-to-textPer minute of audio: dictating a message by microphone, and the after-call transcript of a recorded phone call.
Website crawling1 credit per page (a "page" ≈ 2,000 characters of extracted text).
Embedding (indexing)0.01 credits per 1,000 tokens.
Web search0.10 credits per search.
Web page read1 credit each time the agent opens a page in full.
Code execution (spreadsheets, charts)0.5 credits each time the assistant runs code on your data, up to 10 runs per message. Dashboard Chat and scheduled tasks only.
MemoryA small text-model charge when facts and a summary are extracted after a conversation (customer memory, and your own chat memory when it is on).
Scheduled task runThe same as running that conversation by hand.
Agent test runThe agent's reply plus its assessment, each at the model's text rate. Suggestions and predictions also call a model. See Testing.

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.

To estimate a monthly bill, the cost calculator takes chat, voice or both, a setup (with or without a knowledge base and tools), a model and your volume, and shows the estimated credits per month and a suggested plan. It is a rough estimate. The models page lists each text model's rates under Show details: Input, Output and Cached, in credits per ~1,000 words.

Supported file types and upload limits

TypeExtensions
PDF.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 sourceChat attachmentChat image
Types.pdf .doc .docx .txt .md.pdf .docx .txt .md .html .json .csv .xlsx.png .jpg .webp .gif
Max size100 MB25 MB (20 MB for .csv, .xlsx, .json)10 MB, 10 per message, 25 per conversation
RetentionUntil you delete itOrganization-wide setting, 1 week to foreverSame 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

ChannelStatus
Website chat widgetLive
Phone / voice agentLive
Chat (Internal) for the teamLive
WhatsAppComing soon
TelegramComing soon
EmailComing soon

Full details in Deployments.

Data-residency tiers

Set per organization under Organization → General → Server Location (owner/admin). The tier filters which AI models you can select. Switzerland counts as European but is not part of the EU; a UK company does not count as a European company.

TierModels allowed
Swiss server by Swiss companySwiss-hosted models from Swiss companies
Swiss server, any companySwiss-hosted models, any provider
European server by European companyEuropean-hosted models from European companies
European server, any companyEuropean-hosted models, any provider
GlobalNo restriction (default)

Platform infrastructure, knowledge-base storage, and chat history are in Switzerland (Infomaniak) regardless of tier. Voice telephony uses a US provider (Twilio). Web search, when an agent has it on, sends queries to Staan.ai in France. Appointment booking sends the booker's name, email and chosen time to Cal.com's US-hosted service (a self-hosted Cal.com keeps it in Switzerland). Voice, on the phone and in the website widget, runs on GPT Live 1, a Microsoft Azure OpenAI resource in Sweden Central deployed as a global deployment: audio may be processed in Azure regions worldwide; transcripts are stored in Switzerland. Widget voice is off unless the widget enables it. GPT Live 1 counts as a European server run by a US company, so voice (phone deployments, widget voice and the dashboard voice test) is only available under European server, any company and Global. The stricter tiers refuse it; a phone deployment created earlier keeps running but is flagged. 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://api.botts.ai/widget/chat-widget.js?key=YOUR_API_KEY"></script>
  • The key is the deployment's API key, prefixed bts_. Your real key is shown in the widget editor's Install section; copy the snippet from there.
  • The key is public by design and only works for this deployment's widget. The dashboard can't replace it; a new website deployment gets a new key.
  • Works on WordPress, Shopify, Squarespace, Wix, or plain HTML. See Deployments.
  • The closed widget is a Bubble (default), a Bubble with message, or a Card with buttons (Chat, and Talk when AI voice is on; visitors can minimise it). Set under Launcher in the widget editor.
  • AI voice (optional, set under AI voice): a voice session ends after 10 minutes or 90 seconds of silence; the spoken welcome message is up to 300 characters. See Deployments.

Connections and secrets

Connections let an agent call external systems. Configured under Integrations (Admin/Owner).

Connection typeWhere its tools come from
MCP serverDiscovered from the remote server, imported by you
HTTP APIEndpoints you define under one base URL, or import from an OpenAPI spec URL (JSON or YAML)
FieldValues
MethodGET, POST, PUT, DELETE, PATCH
AuthenticationNone, Bearer, Basic, Custom Header, or Login Token
Auth scopeOrganization-wide, or per user
Parameter typesstring, number, integer, boolean
Parameter optionsRequired, fixed value, restricted to allowed values
Live timeout30 seconds
Pipeline stepsunwrap, project, search, filter, sort, top, gaps, render
  • Reference a stored secret anywhere in the URL, headers, or auth with $secret:key_name.
  • GET/DELETE send parameters as query string; POST/PUT/PATCH send a JSON body. Path variables like {order_id} are percent-encoded and substituted.
  • A 2xx response body is passed to the model, capped at both ends if very large; 4xx/5xx bodies are hidden (the model is told the status plus a hint not to invent data). Return 200 with 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.

OwnershipThe account that created it. Not visible to other members, including Admins.
Who can createAny role that can use chat, including Member
RunsA deployed agent you can chat with, or a general-purpose model
FrequencyDaily, weekly (pick weekdays), or monthly (pick days 1–31), at a time in your timezone
Start and endOptional Start on and Stop after dates. Set both to the same day to run a task once on that date.
DeliveryEmail, or in botts.ai marked unread. Saved to a conversation either way.
FailuresEach failed run emails you. After 3 consecutive failures the task pauses (with an email).
Missed runsA run missed during platform downtime runs late within 24 hours, otherwise it is recorded as missed and you get an email. Misses never pause a task.
No creditsThe run is skipped, not queued or retried

Form fields

Built-in lead-capture templates (enable per agent under Form / Lead Capture):

TemplateFields (* = required)
Contactname*, email*, phone, message
Support Ticketsubject*, description*, email*, priority (low/medium/high)
Booking Requestname*, 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 self-service booking setup yet. Appointment booking in a Cal.com calendar exists, but botts.ai attaches the tool on request. The Booking Request form collects a requested date; it does not check availability or book anything. For another scheduling system, use a connection to call its API.
  • No setting that pins the reply language. Agents reply in the language the user writes or speaks. A phone deployment's Language only sets the greeting and first turns, and a widget's Language only sets the widget's own labels. 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 SAML or organization-wide single sign-on, and no audit logs at this time. (Individual accounts can sign in with Continue with Google or a passkey.)
  • 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 limitNow
No web browsingAgents can search the web and read pages, optionally restricted to chosen domains
No conversation exportExport in JSON, CSV, or Excel, per message or per conversation
No document uploads in chatAttach documents to a conversation and ask about them
No scheduled or unattended runsScheduled tasks run an agent on a timer
No calendar or booking automationAppointment booking finds free slots and books them in a Cal.com calendar, in chat and on voice
Tools are hand-written HTTP endpoints onlyMCP servers and OpenAPI import

Last updated on October 7, 2026