See Stacksync in action with a solution architect. Book a demo ↗
Knowledge bases

Knowledge bases

Create a knowledge base

POST
/v1/workspaces/{workspace_id}/knowledge-bases

Creates an empty knowledge base; add documents with Add a knowledge base document. With validate_only, the checks run and 204 answers, nothing is created.

Authorization

Authorizationstringheaderrequired

Bearer <key>, where <key> is a workspace API key or a user API key. See Authentication.

Path Parameters

workspace_id*integer

The workspace. List the ones your key can reach with GET /v1/workspaces.

Query Parameters

region*Regions

Region of the resource: besg (Europe) or usnv (United States), as GET /v1/regions lists them

Value in"besg""usnv"

Header Parameters

Idempotency-Key?|

Makes the create retry-safe for 24 hours: a retry with the same key answers the resource the first call created, with the Idempotent-Replayed: true header, and creates nothing. 1 to 255 visible ASCII characters. The same key with a different request answers 422; while the first call still runs, 409.

Defaultnull

Request Body

application/json
  1. body
name*Name

Name, unique among the workspace's knowledge bases of the region

Length1 <= length <= 255
resource_id?|

The id genies reference it by, unique in the region; derived from the name when absent (a renamed knowledge base keeps its own, so its old name needs another one)

Defaultnull
folder_id?|

Folder to list it in; the root when absent

Defaultnull
is_shared_with_workspace?Is Shared With Workspace

true lets every member of the workspace use it

Defaultfalse
validate_only?Validate Only

Run every check of the write and answer 204 without writing: a refused write answers the error the write would

Defaultfalse

Response Body

Created

application/json
  1. response

A knowledge base, which genies answer from

knowledge_base_id*Knowledge Base Id
name*Name
resource_id*Resource Id
region*Region
is_shared_with_workspace*Is Shared With Workspace
folder_id*string|null
created_time*Created Time
Formatdate-time
last_modified_time*Last Modified Time
Formatdate-time
Create a knowledge base
curl -X POST 'https://api.stacksync.com/v1/workspaces/0/knowledge-bases?region=besg' \  -H 'Content-Type: application/json' \  -d '{  "name": "<name>"}'
{  "knowledge_base_id": "<knowledge_base_id>",  "name": "<name>",  "resource_id": "<resource_id>",  "region": "<region>",  "is_shared_with_workspace": false,  "folder_id": "<folder_id>",  "created_time": "2027-01-15T09:00:00Z",  "last_modified_time": "2027-01-15T09:00:00Z"}