Skip to content

Create Knowledge Base

POST /knowledge-bases

One empty set, with a ceiling, an owner and an embedding model.

The model defaults to this deployment’s embedder rather than to a literal: a base created naming a model nothing here can produce is a base every write fails against.

FieldTypeNotes
slugstringrequiredmin length 1 max length 120
namestringrequiredmin length 1 max length 200
scopeworkspace | organization | platformoptionalDefault "workspace".
kindstringoptionalDefault "general". min length 1 max length 60
owner_agent_idstring (uuid) | nulloptional—
owner_persona_idstring (uuid) | nulloptional—
is_privatebooleanoptionalDefault false.
subject_kinduser | guest | nulloptional—
subject_idstring | nulloptionalmax length 200
embedding_modelstring | nulloptionalmax length 120
consolidationobject | nulloptional—
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 \
-H "Authorization: Bearer $COBRE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"slug": "string",
"name": "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—