# Manage knowledge bases

Create, query, update, or delete knowledge bases in a workspace. This page covers the knowledge base itself; use the relevant task pages to add files and data sources, adjust segments, or maintain semantic entries.

## Prerequisites

Prepare credentials that can access the target workspace. For service endpoints, authentication, and general request formats, see [Prepare to call an API](../../api-call-basics.md).

Before creation, updates, or deletion, confirm the target knowledge base and its ID in the knowledge-base list or details.

## Call sequence

1. First [list knowledge bases](../../../../reference/api/ai-studio/resource-center/knowledge-bases/list-knowledge-bases.md) to decide whether to use an existing knowledge base or create a new one.
2. At creation, choose the appropriate create action based on whether you provide data sources at the same time. Retain the returned knowledge base ID after creation.
3. To adjust an existing knowledge base, first [get knowledge base details](../../../../reference/api/ai-studio/resource-center/knowledge-bases/get-knowledge-base.md), then update the target knowledge base.
4. Before deletion, query details again and confirm deletion conditions and impact on the action page.

## API operations

### Create and discover knowledge bases

| What you need to do | API operation | Use it when |
| --- | --- | --- |
| Create an empty data-side knowledge base | [Create a knowledge base and data domain](../../../../reference/api/ai-studio/resource-center/knowledge-bases/create-empty-knowledge-base.md) | Create a knowledge base without data sources first. |
| Create a knowledge base with data sources | [Create a knowledge base and add data](../../../../reference/api/ai-studio/resource-center/knowledge-bases/create-knowledge-base-with-sources.md) | You identified the data sources to connect during creation. |
| Create a knowledge base | [Create an empty knowledge base](../../../../reference/api/ai-studio/resource-center/knowledge-bases/create-knowledge-base.md) | Create a knowledge base through the standard path. |
| Query knowledge bases | [List knowledge bases](../../../../reference/api/ai-studio/resource-center/knowledge-bases/list-knowledge-bases.md) | Select a target knowledge base or confirm creation. |
| Query knowledge base tags | [List knowledge base tags](../../../../reference/api/ai-studio/resource-center/knowledge-bases/list-knowledge-base-tags.md) | Understand available knowledge bases by tag. |

### View and maintain knowledge bases

| What you need to do | API operation | Use it when |
| --- | --- | --- |
| Query knowledge base details | [Get knowledge base details](../../../../reference/api/ai-studio/resource-center/knowledge-bases/get-knowledge-base.md) | Get current information, or confirm the target before updating or deleting. |
| Update a knowledge base | [Update a knowledge base](../../../../reference/api/ai-studio/resource-center/knowledge-bases/update-knowledge-base.md) | You have the knowledge base ID and need to modify its configuration. |
| Delete a knowledge base | [Delete a knowledge base](../../../../reference/api/ai-studio/resource-center/knowledge-bases/delete-knowledge-base.md) | Confirm impact and conditions on the action page before deletion. |

## Confirm the result

After creation or an update, use [Get knowledge base details](../../../../reference/api/ai-studio/resource-center/knowledge-bases/get-knowledge-base.md) to confirm current information for the target. To confirm that it appears in the available scope, use [List knowledge bases](../../../../reference/api/ai-studio/resource-center/knowledge-bases/list-knowledge-bases.md). After submitting deletion, also use the list or details to confirm whether the object remains available.

## Limitations and notes

Deletion affects the target knowledge base. Before proceeding, confirm conditions and results in [Delete a knowledge base](../../../../reference/api/ai-studio/resource-center/knowledge-bases/delete-knowledge-base.md).

## Next steps

- [Manage data sources and documents](data-sources-documents.md)
- [Manage segments and processing tasks](segments-processing.md)
- [Manage semantic entries](semantic-entries.md)
