Skip to content

Reembed Knowledge Base

POST /knowledge-bases/{kb_id}/reembed

Change a base’s embedding model the supported way: into a new base (annex 10 §2).

One transaction — the new base under the new slug, every item embedded fresh under the new model, the grants repointed, the source frozen as the audit trail. With embedding_model omitted the target is the deployment’s own, which is the retroactive backfill D-5306 names: a base created with "none" turning embeddings on, priced by the same ledger as any other embed.

NameInTypeNotes
kb_idpathstring (uuid)required—
FieldTypeNotes
slugstringrequiredmin length 1 max length 120
embedding_modelstring | nulloptionalmax length 120
StatusDescriptionBody
201Successful ResponseKnowledgeBaseView
422Validation ErrorHTTPValidationError

The body shows the fields the schema always carries. Which combination is legal is a service rule the schema cannot express, so read the description above before copying this.

Terminal window
curl -X POST https://your-deployment.example.com/knowledge-bases/{kb_id}/reembed \
-H "Authorization: Bearer $COBRE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"slug": "string"
}'
FieldTypeNotes
idstring (uuid)required—
slugstringrequired—
namestringrequired—
scopeworkspace | organization | platformrequired—
kindstringrequired—
owner_agent_idstring (uuid) | nullrequired, nullable—
owner_persona_idstring (uuid) | nullrequired, nullable—
is_privatebooleanrequired—
is_frozenbooleanrequired—
embedding_modelstringrequired—
embedding_dimintegerrequired—
item_countintegerrequired—
subject_kinduser | guest | nullrequired, nullable—
subject_idstring | nullrequired, nullable—
last_consolidated_atstring (date-time) | nulloptional—
curation_countsobject | nulloptional—
created_atstring (date-time)required—
updated_atstring (date-time)required—