仕組み
ナレッジベースを手動で作成する必要はありません。コンテンツ(URL、ファイル、テキスト)を追加すると自動的に作成され、ID が返されます。
アップロードされたコンテンツは通話中に自動的にインデックス化・検索されます — 設定は不要です。
対応ファイル形式:PDF、Excel、Word 文書。最大ファイルサイズ:20 MB。
クイックスタート — 1 回の API 呼び出しでコンテンツを追加
ナレッジベース ID を手動で作成する必要はありません。POST /v1/knowledge-bases/sources(パスに kb_id なし)でソース名から新しいナレッジベースが自動作成され、すぐにインデックス処理が開始されます。レスポンスに knowledge_base_id が含まれます — エージェントに紐付けるためにこれを保存してください。
URL を追加
公開 URL を指定します — ドキュメントページ、FAQ、ブログ記事、製品ページなど。OneInbox がページを取得してコンテンツを自動的にインデックスします。
curl -X POST https://api.oneinbox.ai/v1/knowledge-bases/sources \
-H "Authorization: Bearer <api_key>" \
-F "type=url" \
-F "source=https://docs.yourproduct.com/faq"
ファイルをアップロード
ドキュメントを直接アップロードします。対応フォーマット:PDF、Excel、Word 文書。file フィールドのみを使用してください — ファイルをアップロードする際は type フィールドを含めないでください。
curl -X POST https://api.oneinbox.ai/v1/knowledge-bases/sources \
-H "Authorization: Bearer <api_key>" \
-F "file=@/path/to/your-document.pdf"
インラインテキストを追加
プレーンテキストとしてコンテンツを直接貼り付けます — ポリシー、スクリプト、FAQ、または手元にある任意のテキストに便利です。
curl -X POST https://api.oneinbox.ai/v1/knowledge-bases/sources \
-H "Authorization: Bearer <api_key>" \
-F "type=text" \
-F "source=Our refund policy is 30 days. Customers must provide proof of purchase to receive a refund."
3 つのエンドポイントはすべて同じレスポンス構造を返します:
{
"knowledge_base_id": "kb_abc123",
"source": { "id": "kbs_xyz", "status": "processing" },
"job": { "id": "kbj_xyz", "status": "queued" }
}
knowledge_base_id — 自動作成されたナレッジベースの ID。これを保存して、ステップ 3 でエージェントに KB を紐付けます。
source.id — 追加された個別のコンテンツソース。
job.id — 処理ジョブ。これをポーリングしてインデックス進捗を追跡します。
KB はURL ドメインまたはファイル名にちなんで命名されます。
ステップ 2 — 処理状況を確認する
コンテンツは非同期でインデックスされます。エージェントに KB を紐付ける前にジョブが完了するまで待ちます — エージェントは処理が完了したコンテンツのみ使用できます。
# この KB のすべてのジョブを一覧表示
curl https://api.oneinbox.ai/v1/knowledge-bases/<kb_id>/jobs \
-H "Authorization: Bearer <api_key>"
# 特定のジョブを取得
curl https://api.oneinbox.ai/v1/knowledge-bases/<kb_id>/jobs/<job_id> \
-H "Authorization: Bearer <api_key>"
ジョブはこの順序で進みます:queued → running → completed または failed
ステップ 3 に進む前に "status": "completed" になるまで待ってください。
ステップ 3 — LLM モデルに紐付ける
これがナレッジベースをエージェントで利用可能にするステップです。LLM モデルに紐付けます(エージェントに直接ではなく)。llm_id はエージェント作成時に返されます — 持っていない場合は GET /v1/agents/<agent_id> で取得してください。
curl -X PATCH https://api.oneinbox.ai/v1/models/<llm_id> \
-H "Authorization: Bearer <api_key>" \
-H "Content-Type: application/json" \
-d '{
"knowledge_base_ids": ["<kb_id>"]
}'
この LLM モデルを使用するすべてのエージェントがナレッジベースにアクセスできるようになります。複数のナレッジベースを一度に紐付けるには:
{ "knowledge_base_ids": ["kb_abc123", "kb_def456"] }
ナレッジベースを管理する
すべてのナレッジベースを一覧表示
アカウント内のすべてのナレッジベースを取得します。kb_id の値を見つけたり、エージェントがアクセスできるコンテンツを確認するのに便利です。
curl https://api.oneinbox.ai/v1/knowledge-bases \
-H "Authorization: Bearer <api_key>"
ナレッジベースのソースを一覧表示
特定の KB に追加されたすべての個別コンテンツソース(URL、ファイル、インラインテキスト)を確認します。
curl https://api.oneinbox.ai/v1/knowledge-bases/<kb_id>/sources \
-H "Authorization: Bearer <api_key>"
ソースを削除する
KB から単一のソースを、そのベクターチャンクおよび保存ファイルごと削除します。source_id は上記のソース一覧エンドポイントから取得できます。
curl -X DELETE "https://api.oneinbox.ai/v1/knowledge-bases/<kb_id>/sources/<source_id>" \
-H "Authorization: Bearer <api_key>"
ナレッジベースを更新する
KB の名前、チャンクサイズ、または多言語モードを変更します。チャンクサイズの変更は次に処理されるソースから有効になります — 既存のコンテンツは自動的に再インデックスされません。
curl -X PATCH https://api.oneinbox.ai/v1/knowledge-bases/<kb_id> \
-H "Authorization: Bearer <api_key>" \
-H "Content-Type: application/json" \
-d '{ "name": "Product Docs v2", "chunk_size": 1024, "multilingual": true }'
| フィールド | 内容 |
|---|
name | KB の名前変更 |
chunk_size | チャンクあたりのトークン数 — 小さいほど精度高、大きいほど文脈が多い |
multilingual | true にすると言語をまたいだ検索が有効になる(コンテンツと質問が異なる言語でも可) |
ナレッジベースを削除する
KB とそのインデックス済みコンテンツをすべて永続的に削除します。KB が LLM モデルに紐付いている場合、削除後はそのエージェントで利用できなくなります。
curl -X DELETE https://api.oneinbox.ai/v1/knowledge-bases/<kb_id> \
-H "Authorization: Bearer <api_key>"
API リファレンス
ソース追加(KB 自動作成) · ソース追加 · ジョブ一覧