Skip to content

List KB entry versions

GET
/api/kb-entries/{entryId}/versions

Returns the version history for a knowledge base entry, newest first. Draft and pending-review versions are excluded. Each item is a trimmed summary; fetch a single version to retrieve its content.

entryId
required
string format: uuid

The unique identifier of the KB entry.

The version history for the entry.

The version history of an entry, newest first. Draft and pending-review versions are excluded.

object
versions
required

The entry versions, ordered newest first.

Array<object>

A trimmed metadata view of one version, returned in version-history listings. Content fields are omitted; fetch a single version to retrieve its content.

object
id
required

Unique identifier for this version row.

string format: uuid
Example
v1a2b3c4-5678-9abc-def0-1234567890ab
versionNumber
required

Monotonic version number within the entry, starting at 1.

integer
Example
3
status
required

Lifecycle status of this version, such as ‘published’ or ‘superseded’.

string
Example
published
authorUserId

Identifier of the actor who authored this version, when recorded.

string | null
Example
kp_1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d
authorNote

Optional note the author attached to this version.

string | null
Example
Corrected the delivery estimate.
sourceType
required

How this version was produced.

string
Example
manual
sourceSessionId

The originating session when this version was produced by an applied change-set.

string | null format: uuid
sourceConversationId

The conversation that inspired this version, when applicable.

string | null format: uuid
publishedAt

Timestamp when this version became published.

string | null format: date-time
Example
2026-03-15T10:30:00.000Z
supersededAt

Timestamp when this version was superseded by a newer one.

string | null format: date-time
createdAt
required

Timestamp when this version row was created.

string format: date-time
Example
2026-03-15T10:30:00.000Z

No KB entry exists with the given ID in the authenticated tenant.

Standard error response returned by all endpoints on failure.

object
error
required

A human-readable error message describing what went wrong.

string
Example
Conversation not found
code

A machine-readable reason on some refusals, for example ‘key_lock’ when an API key’s brand or workspace restriction does not cover the action.

string
Example
key_lock
missing_scopes

On a 403 for an API key without a scope the endpoint requires: the scopes the key lacks.

Array<string>
Example
[
"mcp:write"
]
entryId

On a 409 with code duplicate_question or duplicate_rule_text: the knowledge base entry or policy that already holds the question or rule text.

string format: uuid
Example
11223344-5566-4788-99aa-bbccddeeff00
connectionId

On a 422 about one MCP connection a request names, from an assignment or an agent create or update (a connection that does not exist, one listed twice, or one that does not declare a tool named): the connection, as the request named it.

string
undeclaredTools

On the same 422: the tool names the connection does not declare.

Array<string>
Example
[
"get_orders"
]
declaredTools

On the same 422: the tools the connection declares.

Array<string>
Example
[
"get_order",
"search_orders"
]