Skip to content
  • Auto
  • Light
  • Dark

Create

Start Indexing Job for a Knowledge Base
client.knowledgeBases.indexingJobs.create(IndexingJobCreateParams { data_source_uuids, knowledge_base_uuid } body?, RequestOptionsoptions?): IndexingJobCreateResponse { job }
post/v2/gen-ai/indexing_jobs

To start an indexing job for a knowledge base, send a POST request to /v2/gen-ai/indexing_jobs.

ParametersExpand Collapse
body: IndexingJobCreateParams { data_source_uuids, knowledge_base_uuid }
data_source_uuids?: Array<string>

List of data source ids to index, if none are provided, all data sources will be indexed

knowledge_base_uuid?: string

Knowledge base id

ReturnsExpand Collapse
IndexingJobCreateResponse { job }

StartKnowledgeBaseIndexingJobOutput description

job?: APIIndexingJob { completed_datasources, created_at, data_source_uuids, 12 more }

IndexingJob description

completed_datasources?: number

Number of datasources indexed completed

formatint64
created_at?: string

Creation date / time

formatdate-time
data_source_uuids?: Array<string>
finished_at?: string
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
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

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_skipped?: string

Total Items Skipped

formatuint64
updated_at?: string

Last modified

formatdate-time
uuid?: string

Unique id

Start Indexing Job for a Knowledge Base
import Gradient from '@digitalocean/gradient';

const client = new Gradient();

const indexingJob = await client.knowledgeBases.indexingJobs.create();

console.log(indexingJob.job);
{
  "job": {
    "completed_datasources": 123,
    "created_at": "2023-01-01T00:00:00Z",
    "data_source_uuids": [
      "example string"
    ],
    "finished_at": "2023-01-01T00:00:00Z",
    "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_skipped": "12345",
    "updated_at": "2023-01-01T00:00:00Z",
    "uuid": "123e4567-e89b-12d3-a456-426614174000"
  }
}
Returns Examples
{
  "job": {
    "completed_datasources": 123,
    "created_at": "2023-01-01T00:00:00Z",
    "data_source_uuids": [
      "example string"
    ],
    "finished_at": "2023-01-01T00:00:00Z",
    "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_skipped": "12345",
    "updated_at": "2023-01-01T00:00:00Z",
    "uuid": "123e4567-e89b-12d3-a456-426614174000"
  }
}