Skip to main content
A workspace is a named collection of files and derived outputs, pinned to a domain (vocabulary for classification) and a set of access labels.

Workspace properties

When you create a workspace, you choose:
  • Name — human-readable identifier.
  • Domain — vocabulary for classification (domain_slug, e.g. "generic"). The domain determines the taxonomy labels available for document classification.
  • Access labels — a frozen subset of your organization’s label catalog (see Access labels).

Creating a workspace

List available domains first to get the correct domain_slug:
Response:

Workspace stats

Returns file counts, ingestion status distribution, storage bytes, and knowledge-graph build status.

Listing workspaces

Returns a keyset-paginated page. Pass ?cursor=<next_cursor> for subsequent pages.

Deleting a workspace

confirm_name must exactly match the workspace’s name. This is a cascade: all files, derivatives, and ingestion metadata are deleted. It cannot be undone. The response is a Job with kind: "workspace_delete".

Knowledge graph

A graph is built when you ask for one. It is billable and runs for as long as the corpus takes, so ingesting files never commits you to one:
For a workspace that should always hold a graph over everything it ingests, turn auto_build on and every ingestion will chain one. PATCH replaces the knowledge_graph block whole, so if the workspace already has exclude_path_prefixes or exclude_categories set, read the current block first and send it back with auto_build changed — sending auto_build alone resets the rest of the block to its schema defaults (empty), silently dropping any exclusion rules:
The same whole-block rule applies to ledger_understanding (trigger, gl_parsing). auto (the default) chains a run after ingestion only when the workspace already holds a journal-line table; off stops chaining and never refuses an explicit start. See Ledger understanding. See Knowledge graph and the workspace guide.

Global context

global_context is background text that every query in the workspace should know, such as how the journals are keyed or which entity the ledger covers. Save it once, and every je-testing or search request that omits context runs with it. Send context to replace it for one run, or "context": "" to run with none. It is capped at the same length as a query’s context.
Send "global_context": "" to clear it.