# Update metadata
updated = await client.knowledge_bases.update(
kb.id,
description="Updated description",
tags=["api", "reference"],
)
# Re-index all documents
await client.knowledge_bases.refresh(kb.id)
# Refresh one document
await client.knowledge_bases.refresh_document(kb.id, "doc_abc123")
# Get files
files = await client.knowledge_bases.list_files(kb.id)
# View the original text for one document
document = await client.knowledge_bases.view_document(
kb.id,
document_id=files[0].document_id,
)
# Get documents (chunks)
docs = await client.knowledge_bases.list_documents(kb.id)
# Inspect metadata fields
schema = await client.knowledge_bases.metadata_schema(kb.id, sample_size=100)
# Filter documents by metadata
filtered = await client.knowledge_bases.filter_documents(
kb.id,
metadata_filters={"category": "Support"},
limit=25,
)
# Browse grouped or flattened content
content = await client.knowledge_bases.content(
kb.id,
page=1,
page_size=20,
source_file="faq.md",
flatten=False,
)
# Get API search defaults
defaults = await client.knowledge_bases.search_defaults()
# Get summary / stats
summary = await client.knowledge_bases.summary(kb.id)
# Delete a specific document
await client.knowledge_bases.delete_document(kb.id, "doc_abc123")
# Delete the entire KB
await client.knowledge_bases.delete(kb.id)