Update knowledgeSource
For file-type rows (uploaded via the files connector) only name, status, and text
are accepted — other fields return 422. Editing text sets data.hasManualMarkdownEdits = true
so the FE can warn before a re-upload would overwrite manual edits. The embeddingHash
is intentionally NOT recomputed on text-only edits — it represents the parse hash of the
original binary and stays stable until a real reindex / replace.
Website-type pages cannot be edited through this endpoint.
Authorizations
JWT-based authentication
Path Parameters
The id of the knowledgeSource to retrieve
Body
Knowledge source object
Internal id, e.g. 123
123
Type of knowledge source
faq, work-instruction, document, other, news, website Status of the knowledge source
active, archived, deleted "active"
URL to associated source. null for sources with internal ids (tickets and templates) or if non-existant (language model source)
"https://company.com/faq/376189"
Name of knowledge source, any requests with existing name will update the existing knowledge source
"Opening hours"
Tags that are assigned to this knowledge source
[70, 71](!) Should be used only with type 'news' (otherwise ignored). Teams that are assigned to the knowledge source object
[1, 2]Title of knowledge source
"Opening hours"
Full text that was used as source
"Our service hours are from 8am to 5pm. We are closed on weekends. [...]"
If true, then this knowledge source is only visible to agents
false
For website-type pages only — true if the page URL matches the parent connector's
sourceConfig.excludePaths. Excluded pages are filtered out of GET /knowledgeSource
(bulk list) and return 404 from GET /knowledgeSource/{id} so Cortex sync stays consistent.
The configuration view (which calls /knowledgeSourceStructure?withExcluded=true)
sees them with this flag set so it can render the "Excluded" tag and the Include action.
Response
Successful operation
Knowledge source object
Operation was successful
true
Internal id, e.g. 123
123
Type of knowledge source
faq, work-instruction, document, other, news, website Status of the knowledge source
active, archived, deleted "active"
URL to associated source. null for sources with internal ids (tickets and templates) or if non-existant (language model source)
"https://company.com/faq/376189"
Name of knowledge source, any requests with existing name will update the existing knowledge source
"Opening hours"
Tags that are assigned to this knowledge source
[70, 71](!) Should be used only with type 'news' (otherwise ignored). Teams that are assigned to the knowledge source object
[1, 2]Agents that have read the knowledge source
[
{
"id": 1,
"name": "John Doe",
"readAt": "2024-11-29 14:38:12"
}
]Title of knowledge source
"Opening hours"
Full text that was used as source
"Our service hours are from 8am to 5pm. We are closed on weekends. [...]"
If true, then this knowledge source is only visible to agents
false
For website-type pages only — true if the page URL matches the parent connector's
sourceConfig.excludePaths. Excluded pages are filtered out of GET /knowledgeSource
(bulk list) and return 404 from GET /knowledgeSource/{id} so Cortex sync stays consistent.
The configuration view (which calls /knowledgeSourceStructure?withExcluded=true)
sees them with this flag set so it can render the "Excluded" tag and the Include action.