uploadKnowledgeBaseDocument()
This method uploads and indexes a document in a knowledge base.
Usage
The following example shows a basic usage of the backend client from @wacht/nextjs/server.
import { wachtClient } from '@wacht/nextjs/server';export async function example() { const client = await wachtClient(); const kbId: string = 'kbid-123'; const file: File = new File(['example'], 'example.txt'); const title: string = 'Example title'; const description: string = 'Example description'; return client.ai.uploadKnowledgeBaseDocument(kbId, file, title, description);}Signature
function uploadKnowledgeBaseDocument( kbId: string, file: File, title?: string, description?: string, client?: WachtClient,): Promise<AiKnowledgeBaseDocument>Parameters
›kbId: string;
kbId: string;Target knowledge base id.
›file: File;
file: File;File/blob payload uploaded using multipart form data.
›title?: string | undefined;
title?: string | undefined;Optional document/item title metadata.
›description?: string | undefined;
description?: string | undefined;Optional description metadata.
Return value
›id?: string | undefined;
id?: string | undefined;Document id.
›title?: string | undefined;
title?: string | undefined;Document title.
›status?: string | undefined;
status?: string | undefined;Ingestion/indexing status.
Examples
AI usage pattern
import { wachtClient } from '@wacht/nextjs/server';export async function createKbAndUpload(file: File) { const client = await wachtClient(); const kb = await client.ai.createKnowledgeBase({ name: 'Support Docs', description: 'Knowledge base for support runbooks', }); const doc = await client.ai.uploadKnowledgeBaseDocument(kb.id, file, 'runbook.md', 'Support runbook'); return { kb, doc };}