How it works
OneInbox automatically picks the best retrieval method based on the size of your content:| Content size | Method | What happens |
|---|---|---|
| ≤ 10k tokens | Direct injection | Content is inserted into the system prompt at call time |
| > 10k tokens | Vector search | A search_knowledge_base tool is auto-created; the agent queries it during calls |
Quick start — add content in one call
You can skip creating a knowledge base ID manually.POST /v1/knowledge-bases/sources (without a kb_id in the path) auto-creates a new knowledge base named after your source and starts ingestion immediately. The response gives you the knowledge_base_id — save it for attaching to your agent.
Add a URL
Provide any public URL — a docs page, FAQ, blog post, or product page. OneInbox fetches the page and indexes its content automatically.Upload a file
Upload a document directly. Supported formats: PDF, DOCX, XLSX, TXT, MD. Use thefile field only — do not include a type field when uploading a file.
Add inline text
Paste content directly as plain text — useful for policies, scripts, FAQs, or any text you already have on hand.knowledge_base_id— the ID of the auto-created knowledge base. Save this — you’ll use it in Step 4 to attach the KB to your agent.source.id— the individual content source that was added.job.id— the processing job. Poll this to track indexing progress.
Manual setup (custom name / settings)
Use this flow when you need a specific KB name, chunk size, or multilingual support.Step 1 — Create a knowledge base
Creates an empty knowledge base with the settings you choose. You’ll add content to it in Step 2.| Field | What it does |
|---|---|
name | A label for this KB — visible in your account, not shown to callers |
chunk_size | How many tokens per chunk for vector indexing. 512 is a good default — lower values give more precise retrieval, higher values give more context per result |
multilingual | Set true if your content or callers use multiple languages |
id (kb_abc123) — you’ll use it in Steps 2, 3, and 4.
Step 2 — Add content
Add content to the knowledge base you created. You can add links, files, and plain text — mix and match as needed. All sources are processed asynchronously and the API returns202 immediately with a job.id to track progress.
Add a URL
Provide any public URL — a docs page, FAQ, blog post, or product page. OneInbox fetches the page and indexes its content automatically.Upload a file
Upload a document as a file source. Supported formats: PDF, DOCX, XLSX, TXT, MD. Use thefile field only — do not include a type field.
Add inline text
Paste content directly — useful for policies, scripts, or any text you already have. Thesource field is the raw text content.
Step 3 — Check processing status
Content is indexed asynchronously. Wait for the job to complete before attaching the KB to your agent — the agent can only use content that has finished processing.queued → running → completed or failed
Wait for "status": "completed" before moving to Step 4.
Step 4 — Attach to your LLM model
This is the step that makes the knowledge base available to your agent. Attach it to the LLM model (not the agent directly).llm_id is returned when you create an agent — if you don’t have it, fetch it with GET /v1/agents/<agent_id>.
Manage knowledge bases
List all knowledge bases
Retrieve all knowledge bases in your account. Useful for findingkb_id values or auditing what content your agents have access to.