---
title: "Update knowledge base"
method: PUT
path: "/assistant_knowledges/{knowledge_id}"
tags: ["Knowledge Bases"]
---

# Update knowledge base

`PUT /assistant_knowledges/{knowledge_id}`

Update a specific knowledge base configuration

## Path parameters

- `knowledge_id` string, required

## Request body

- KnowledgeBaseUpdateRequest — Request body for updating a knowledge base
  - `name` string — Name of the knowledge base
  - `source` KBSourceConfig — Sources configuration
    - `sources` KBSource[]
      - `_id` string — Unique identifier for the source
      - `type` 'web-site' | 'document' | 'plain-text', required — Type of source
      - `data` string, required — URL for web-site, file URL for document, or text content for plain-text
      - `name` string — Name of the document (for document type)
      - `metadata` string — Additional metadata
      - `url` string — Alternative URL field
      - `pages` KBWebPage[] — Scraped pages (for web-site type)
        - `_id` string
        - `src` string — URL of the page
        - `title` string — Page title
        - `scrapping_status` boolean — Whether scraping was successful
  - `LLM` KBLLMConfig — LLM model configuration for the knowledge base
    - `model_id` string
    - `model_name` string
    - `provider` string
    - `name` string
  - `reranking` KBRerankingConfig — Reranking configuration
    - `weighting_multiplier_coefficient` number, float — Coefficient for weighting multiplier
  - `chunking` KBChunkingConfig — Chunking configuration for different file types
    - `web` object — Chunking configuration for web content
      - `chunking_method` 'fixed_size' | 'dynamic' — Method for chunking web content
      - `chunk_size` integer — Size of chunks in characters
      - `chunk_overlap` integer — Overlap between chunks in characters
      - `instructions` string — Custom instructions for chunking
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `image` object — Chunking configuration for images
      - `chunking_method` 'fixed_size' | 'dynamic' — Method for chunking image content
      - `chunk_size` integer
      - `chunk_overlap` integer
      - `instructions` string
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `pdf` object — Chunking configuration for PDF files
      - `chunking_method` 'fixed_size' | 'dynamic' | 'by_page' — Method for chunking: fixed_size, dynamic, or by_page (PDF only)
      - `chunk_size` integer
      - `chunk_overlap` integer
      - `split_pdf_pages` boolean — Whether to split PDF by pages
      - `instructions` string
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `docx` object — Chunking configuration for DOCX files
      - `chunking_method` 'fixed_size' | 'dynamic' | 'by_page' — Method for chunking: fixed_size, dynamic, or by_page (DOCX only)
      - `chunk_size` integer
      - `chunk_overlap` integer
      - `instructions` string
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `ppt` object — Chunking configuration for PPT files
      - `chunking_method` 'fixed_size' | 'dynamic' | 'by_page' — Method for chunking: fixed_size, dynamic, or by_page (PPT only)
      - `chunk_size` integer
      - `chunk_overlap` integer
      - `instructions` string
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `txt` object — Chunking configuration for TXT files
      - `chunking_method` 'fixed_size' | 'dynamic' — Method for chunking text files
      - `chunk_size` integer
      - `chunk_overlap` integer
      - `instructions` string
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `csv` object — Chunking configuration for CSV files
      - `chunking_method` 'by_line' — CSV files only support by_line chunking method
      - `chunk_size` integer
      - `chunk_overlap` integer
      - `instructions` string
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
  - `ingestion` KBIngestionConfig — Ingestion configuration for different file types
    - `delay_between_documents_ms` integer — Delay between processing documents in milliseconds
    - `web` object — Web scraping ingestion configuration
      - `waiting_time_for_web_scraping` integer — Wait time in milliseconds before scraping
      - `library` 'Cheerio' | 'Puppeteer' — Scraping library to use
      - `selector` string — CSS selector for content extraction
      - `exclude` string — CSS selector for elements to exclude
      - `proxy` object — Proxy configuration for web scraping
        - `status` boolean — Whether proxy is enabled
        - `country` string — Country for proxy
    - `image` object — Image ingestion configuration
      - `strategy` 'parse' | 'ocr' — Processing strategy for images
      - `instructions` string — Custom instructions for processing
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `pdf` object — PDF ingestion configuration
      - `strategy` 'parse' | 'ocr' — Strategy for PDF processing: parse (native text) or ocr (scanned docs)
      - `instructions` string — Custom instructions for processing
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `docx` object — DOCX ingestion configuration
      - `strategy` 'parse' | 'ocr' — Processing strategy for DOCX files
      - `instructions` string — Custom instructions for processing
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `ppt` object — PPT ingestion configuration
      - `strategy` 'parse' | 'ocr' — Processing strategy for PPT files
      - `instructions` string — Custom instructions for processing
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `txt` object — TXT ingestion configuration
      - `strategy` 'parse' | 'ocr' — Processing strategy for TXT files
      - `instructions` string — Custom instructions for processing
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
    - `csv` object — CSV ingestion configuration
      - `strategy` 'parse' | 'ocr' — Processing strategy for CSV files
      - `instructions` string — Custom instructions for processing
      - `llm_model` KBLLMConfig — LLM model configuration for the knowledge base
        - `model_id` string
        - `model_name` string
        - `provider` string
        - `name` string
  - `is_document_confidential` boolean — Whether documents are confidential

## Response `200`

Knowledge base successfully updated

- Success
  - `success` boolean

## Other responses

- `400` — Invalid request
- `401` — Unauthorized - Invalid or missing authentication
- `404` — Knowledge base not found

---

[API](https://skmtc.net/smartly/apis/smartly-ai-apis.md) · [All operations](https://skmtc.net/smartly/apis/smartly-ai-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/smartly/smartly-ai-apis/revisions/1e26909d86c9/schema)
