knowledge
Classes
KnowledgeClient
KnowledgeClient(client: OWUIClientBase)
Bases: ResourceBase
Client for the Knowledge endpoints.
- Code Reference client Classes OpenWebUI Attributes knowledge
Source code in src/owui_client/client_base.py
Functions
get_knowledge
get_knowledge(page: int = 1) -> KnowledgeAccessListResponse
Get knowledge bases (read access).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
page
|
int
|
Page number (default 1). |
1
|
Returns:
| Type | Description |
|---|---|
KnowledgeAccessListResponse
|
|
Source code in src/owui_client/routers/knowledge.py
get_knowledge_list
get_knowledge_list() -> List[KnowledgeUserResponse]
Get knowledge bases list (write access).
Returns:
| Type | Description |
|---|---|
List[KnowledgeUserResponse]
|
List[KnowledgeUserResponse]: List of knowledge bases the user has write access to. |
Source code in src/owui_client/routers/knowledge.py
search_knowledge_bases
search_knowledge_bases(query: Optional[str] = None, view_option: Optional[str] = None, page: Optional[int] = 1) -> KnowledgeAccessListResponse
Search knowledge bases.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
Optional[str]
|
Search query string. |
None
|
view_option
|
Optional[str]
|
View option filter (e.g., 'created', 'shared'). |
None
|
page
|
Optional[int]
|
Page number (default 1). |
1
|
Returns:
| Type | Description |
|---|---|
KnowledgeAccessListResponse
|
|
Source code in src/owui_client/routers/knowledge.py
search_knowledge_files
search_knowledge_files(query: Optional[str] = None, page: Optional[int] = 1) -> KnowledgeFileListResponse
Search files across all knowledge bases.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
Optional[str]
|
Search query string. |
None
|
page
|
Optional[int]
|
Page number (default 1). |
1
|
Returns:
| Type | Description |
|---|---|
KnowledgeFileListResponse
|
|
Source code in src/owui_client/routers/knowledge.py
create_new_knowledge
create_new_knowledge(form_data: KnowledgeForm) -> Optional[KnowledgeResponse]
Create a new knowledge base.
Requires workspace.knowledge permission.
If access_control is None (public), requires sharing.public_knowledge permission.
If the user lacks sharing.public_knowledge permission, access_control will default to private {}.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
form_data
|
KnowledgeForm
|
The data for the new knowledge base. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeResponse]
|
Optional[KnowledgeResponse]: The created knowledge base. |
Source code in src/owui_client/routers/knowledge.py
get_knowledge_by_id
get_knowledge_by_id(id: str) -> Optional[KnowledgeFilesResponse]
Get a knowledge base by ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The knowledge base details including files. |
Source code in src/owui_client/routers/knowledge.py
update_knowledge_by_id
update_knowledge_by_id(id: str, form_data: KnowledgeForm) -> Optional[KnowledgeFilesResponse]
Update a knowledge base by ID.
Requires write access to the knowledge base or admin privileges.
If access_control is None (public), requires sharing.public_knowledge permission.
If the user lacks sharing.public_knowledge permission, access_control will default to private {}.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
form_data
|
KnowledgeForm
|
The updated data. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The updated knowledge base. |
Source code in src/owui_client/routers/knowledge.py
update_knowledge_access
update_knowledge_access(id: str, access_grants: list[dict]) -> Optional[KnowledgeFilesResponse]
Update access grants for a knowledge base.
Requires write access to the knowledge base or admin privileges.
If setting public access (principal_id='*'), requires sharing.public_knowledge permission.
If the user lacks permission, public grants will be stripped.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
access_grants
|
list[dict]
|
List of access grant dictionaries. Each dict should contain:
- |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The updated knowledge base with files. |
Source code in src/owui_client/routers/knowledge.py
delete_knowledge_by_id
Delete a knowledge base by ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
bool |
bool
|
True if successful. |
Source code in src/owui_client/routers/knowledge.py
add_file_to_knowledge
add_file_to_knowledge(id: str, file_id: str) -> Optional[KnowledgeFilesResponse]
Add a file to a knowledge base.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
file_id
|
str
|
The ID of the file to add. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The updated knowledge base. |
Source code in src/owui_client/routers/knowledge.py
update_file_from_knowledge
update_file_from_knowledge(id: str, file_id: str) -> Optional[KnowledgeFilesResponse]
Update a file in a knowledge base (re-process).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
file_id
|
str
|
The ID of the file to update. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The updated knowledge base. |
Source code in src/owui_client/routers/knowledge.py
remove_file_from_knowledge
remove_file_from_knowledge(id: str, file_id: str, delete_file: bool = True) -> Optional[KnowledgeFilesResponse]
Remove a file from a knowledge base.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
file_id
|
str
|
The ID of the file to remove. |
required |
delete_file
|
bool
|
Whether to delete the file from the system as well. |
True
|
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The updated knowledge base. |
Source code in src/owui_client/routers/knowledge.py
reset_knowledge_by_id
reset_knowledge_by_id(id: str) -> Optional[KnowledgeResponse]
Reset a knowledge base by ID (remove all files).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeResponse]
|
Optional[KnowledgeResponse]: The reset knowledge base. |
Source code in src/owui_client/routers/knowledge.py
reindex_knowledge_files
Reindex all knowledge files.
This is a blocking operation that reprocesses all files in all knowledge bases. Requires Admin privileges.
Returns:
| Name | Type | Description |
|---|---|---|
bool |
bool
|
True if successful. |
Source code in src/owui_client/routers/knowledge.py
add_files_to_knowledge_batch
add_files_to_knowledge_batch(id: str, file_ids: List[str]) -> Optional[KnowledgeFilesResponse]
Add multiple files to a knowledge base in batch.
This process iterates through files and adds them to the vector database.
Failures are collected in the response warnings field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
file_ids
|
List[str]
|
List of file IDs to add. |
required |
Returns:
| Type | Description |
|---|---|
Optional[KnowledgeFilesResponse]
|
Optional[KnowledgeFilesResponse]: The updated knowledge base. |
Optional[KnowledgeFilesResponse]
|
Check |
Source code in src/owui_client/routers/knowledge.py
reindex_metadata
Reindex knowledge base metadata embeddings.
Requires Admin privileges.
Returns:
| Name | Type | Description |
|---|---|---|
dict |
dict
|
Statistics about the reindexing process (total, success). |
Source code in src/owui_client/routers/knowledge.py
export
Export a knowledge base as a zip file.
Requires Admin privileges.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the knowledge base. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
bytes |
bytes
|
The zip file content. |