Skip to content

Update a Knowledge Base

client.knowledgeBases.update(stringpathUuid, KnowledgeBaseUpdateParams { database_id, embedding_model_uuid, name, 3 more } body?, RequestOptionsoptions?): KnowledgeBaseUpdateResponse { knowledge_base }
put/v2/gen-ai/knowledge_bases/{uuid}

To update a knowledge base, send a PUT request to /v2/gen-ai/knowledge_bases/{uuid}.

ParametersExpand Collapse
pathUuid: string
body: KnowledgeBaseUpdateParams { database_id, embedding_model_uuid, name, 3 more }
database_id?: string

The id of the DigitalOcean database this knowledge base will use, optiona.

embedding_model_uuid?: string

Identifier for the foundation model.

name?: string

Knowledge base name

project_id?: string

The id of the DigitalOcean project this knowledge base will belong to

tags?: Array<string>

Tags to organize your knowledge base.

body_uuid?: string

Knowledge base id

ReturnsExpand Collapse
KnowledgeBaseUpdateResponse { knowledge_base }

Information about an updated knowledge base

knowledge_base?: APIKnowledgeBase { added_to_agent_at, created_at, database_id, 10 more }

Knowledgebase Description

added_to_agent_at?: string

Time when the knowledge base was added to the agent

formatdate-time
created_at?: string

Creation date / time

formatdate-time
database_id?: string
embedding_model_uuid?: string
is_public?: boolean

Whether the knowledge base is public or not

last_indexing_job?: APIIndexingJob { completed_datasources, created_at, data_source_jobs, 16 more }

IndexingJob description

completed_datasources?: number

Number of datasources indexed completed

formatint64
created_at?: string

Creation date / time

formatdate-time
data_source_jobs?: Array<APIIndexedDataSource { completed_at, data_source_uuid, error_details, 11 more } >

Details on Data Sources included in the Indexing Job

completed_at?: string

Timestamp when data source completed indexing

formatdate-time
data_source_uuid?: string

Uuid of the indexed data source

error_details?: string

A detailed error description

error_msg?: string

A string code provinding a hint which part of the system experienced an error

failed_item_count?: string

Total count of files that have failed

formatuint64
indexed_file_count?: string

Total count of files that have been indexed

formatuint64
indexed_item_count?: string

Total count of files that have been indexed

formatuint64
removed_item_count?: string

Total count of files that have been removed

formatuint64
skipped_item_count?: string

Total count of files that have been skipped

formatuint64
started_at?: string

Timestamp when data source started indexing

formatdate-time
status?: "DATA_SOURCE_STATUS_UNKNOWN" | "DATA_SOURCE_STATUS_IN_PROGRESS" | "DATA_SOURCE_STATUS_UPDATED" | 4 more
Accepts one of the following:
"DATA_SOURCE_STATUS_UNKNOWN"
"DATA_SOURCE_STATUS_IN_PROGRESS"
"DATA_SOURCE_STATUS_UPDATED"
"DATA_SOURCE_STATUS_PARTIALLY_UPDATED"
"DATA_SOURCE_STATUS_NOT_UPDATED"
"DATA_SOURCE_STATUS_FAILED"
"DATA_SOURCE_STATUS_CANCELLED"
total_bytes?: string

Total size of files in data source in bytes

formatuint64
total_bytes_indexed?: string

Total size of files in data source in bytes that have been indexed

formatuint64
total_file_count?: string

Total file count in the data source

formatuint64
data_source_uuids?: Array<string>
finished_at?: string
formatdate-time
is_report_available?: boolean

Boolean value to determine if the indexing job details are available

knowledge_base_uuid?: string

Knowledge base id

phase?: "BATCH_JOB_PHASE_UNKNOWN" | "BATCH_JOB_PHASE_PENDING" | "BATCH_JOB_PHASE_RUNNING" | 4 more
Accepts one of the following:
"BATCH_JOB_PHASE_UNKNOWN"
"BATCH_JOB_PHASE_PENDING"
"BATCH_JOB_PHASE_RUNNING"
"BATCH_JOB_PHASE_SUCCEEDED"
"BATCH_JOB_PHASE_FAILED"
"BATCH_JOB_PHASE_ERROR"
"BATCH_JOB_PHASE_CANCELLED"
started_at?: string
formatdate-time
status?: "INDEX_JOB_STATUS_UNKNOWN" | "INDEX_JOB_STATUS_PARTIAL" | "INDEX_JOB_STATUS_IN_PROGRESS" | 4 more
Accepts one of the following:
"INDEX_JOB_STATUS_UNKNOWN"
"INDEX_JOB_STATUS_PARTIAL"
"INDEX_JOB_STATUS_IN_PROGRESS"
"INDEX_JOB_STATUS_COMPLETED"
"INDEX_JOB_STATUS_FAILED"
"INDEX_JOB_STATUS_NO_CHANGES"
"INDEX_JOB_STATUS_PENDING"
tokens?: number

Number of tokens [This field is deprecated]

formatint64
total_datasources?: number

Number of datasources being indexed

formatint64
total_items_failed?: string

Total Items Failed

formatuint64
total_items_indexed?: string

Total Items Indexed

formatuint64
total_items_removed?: string

Total Items Removed

formatuint64
total_items_skipped?: string

Total Items Skipped

formatuint64
total_tokens?: string

Total Tokens Consumed By the Indexing Job

formatuint64
updated_at?: string

Last modified

formatdate-time
uuid?: string

Unique id

name?: string

Name of knowledge base

project_id?: string
region?: string

Region code

tags?: Array<string>

Tags to organize related resources

updated_at?: string

Last modified

formatdate-time
user_id?: string

Id of user that created the knowledge base

formatint64
uuid?: string

Unique id for knowledge base

Update a Knowledge Base
import Gradient from '@digitalocean/gradient';

const client = new Gradient({
  accessToken: 'My Access Token',
});

const knowledgeBase = await client.knowledgeBases.update('"123e4567-e89b-12d3-a456-426614174000"');

console.log(knowledgeBase.knowledge_base);
{
  "knowledge_base": {
    "added_to_agent_at": "2023-01-01T00:00:00Z",
    "created_at": "2023-01-01T00:00:00Z",
    "database_id": "123e4567-e89b-12d3-a456-426614174000",
    "embedding_model_uuid": "123e4567-e89b-12d3-a456-426614174000",
    "is_public": true,
    "last_indexing_job": {
      "completed_datasources": 123,
      "created_at": "2023-01-01T00:00:00Z",
      "data_source_jobs": [
        {
          "completed_at": "2023-01-01T00:00:00Z",
          "data_source_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "error_details": "example string",
          "error_msg": "example string",
          "failed_item_count": "12345",
          "indexed_file_count": "12345",
          "indexed_item_count": "12345",
          "removed_item_count": "12345",
          "skipped_item_count": "12345",
          "started_at": "2023-01-01T00:00:00Z",
          "status": "DATA_SOURCE_STATUS_UNKNOWN",
          "total_bytes": "12345",
          "total_bytes_indexed": "12345",
          "total_file_count": "12345"
        }
      ],
      "data_source_uuids": [
        "example string"
      ],
      "finished_at": "2023-01-01T00:00:00Z",
      "is_report_available": true,
      "knowledge_base_uuid": "123e4567-e89b-12d3-a456-426614174000",
      "phase": "BATCH_JOB_PHASE_UNKNOWN",
      "started_at": "2023-01-01T00:00:00Z",
      "status": "INDEX_JOB_STATUS_UNKNOWN",
      "tokens": 123,
      "total_datasources": 123,
      "total_items_failed": "12345",
      "total_items_indexed": "12345",
      "total_items_removed": "12345",
      "total_items_skipped": "12345",
      "total_tokens": "12345",
      "updated_at": "2023-01-01T00:00:00Z",
      "uuid": "123e4567-e89b-12d3-a456-426614174000"
    },
    "name": "example name",
    "project_id": "123e4567-e89b-12d3-a456-426614174000",
    "region": "example string",
    "tags": [
      "example string"
    ],
    "updated_at": "2023-01-01T00:00:00Z",
    "user_id": "user_id",
    "uuid": "123e4567-e89b-12d3-a456-426614174000"
  }
}
Returns Examples
{
  "knowledge_base": {
    "added_to_agent_at": "2023-01-01T00:00:00Z",
    "created_at": "2023-01-01T00:00:00Z",
    "database_id": "123e4567-e89b-12d3-a456-426614174000",
    "embedding_model_uuid": "123e4567-e89b-12d3-a456-426614174000",
    "is_public": true,
    "last_indexing_job": {
      "completed_datasources": 123,
      "created_at": "2023-01-01T00:00:00Z",
      "data_source_jobs": [
        {
          "completed_at": "2023-01-01T00:00:00Z",
          "data_source_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "error_details": "example string",
          "error_msg": "example string",
          "failed_item_count": "12345",
          "indexed_file_count": "12345",
          "indexed_item_count": "12345",
          "removed_item_count": "12345",
          "skipped_item_count": "12345",
          "started_at": "2023-01-01T00:00:00Z",
          "status": "DATA_SOURCE_STATUS_UNKNOWN",
          "total_bytes": "12345",
          "total_bytes_indexed": "12345",
          "total_file_count": "12345"
        }
      ],
      "data_source_uuids": [
        "example string"
      ],
      "finished_at": "2023-01-01T00:00:00Z",
      "is_report_available": true,
      "knowledge_base_uuid": "123e4567-e89b-12d3-a456-426614174000",
      "phase": "BATCH_JOB_PHASE_UNKNOWN",
      "started_at": "2023-01-01T00:00:00Z",
      "status": "INDEX_JOB_STATUS_UNKNOWN",
      "tokens": 123,
      "total_datasources": 123,
      "total_items_failed": "12345",
      "total_items_indexed": "12345",
      "total_items_removed": "12345",
      "total_items_skipped": "12345",
      "total_tokens": "12345",
      "updated_at": "2023-01-01T00:00:00Z",
      "uuid": "123e4567-e89b-12d3-a456-426614174000"
    },
    "name": "example name",
    "project_id": "123e4567-e89b-12d3-a456-426614174000",
    "region": "example string",
    "tags": [
      "example string"
    ],
    "updated_at": "2023-01-01T00:00:00Z",
    "user_id": "user_id",
    "uuid": "123e4567-e89b-12d3-a456-426614174000"
  }
}