Skip to content

Get world config

GET
/api/v1/config
curl --request GET \
--url http://localhost:11044/api/v1/config \
--header 'X-Embabel-Api-Key: <X-Embabel-Api-Key>'

Returns the current world configuration from config.yml.

Current config

Media type*/*

The user’s world configuration as loaded from the world’s config/world.yml, over the deployment defaults. Answered by GET /config; its parts are edited through the narrower /config endpoints

object
actionCompilerLlm

Stored setting for action compilation, chat_best role by default; nothing reads it at runtime

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
activePersonality
required

Slug of the active personality, a directory under behaviour/personalities/; adaptive by default

string
apiExplorerLlm

Stored setting for API exploration, chat_best role by default; nothing reads it at runtime

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
chat

Model the user chats with, by role or pinned model; null inherits the deployment chat model

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
codingLlm

Model the app builder (vibe coder) writes code with; null inherits the deployment vibe-coder model

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
collectorConfig

Memory-dedup sweep overrides; null inherits every deployment default

object
cron

Six-field Spring cron (seconds first) for the sweep; null inherits the deployment default. Stored and reported, but the scheduled sweep runs on the deployment cron, so this does not change when it runs

string
dryRun

When true, a sweep reports what it would collapse but changes nothing; null inherits the deployment default

boolean
enabled

Whether the sweep runs for this world; null inherits the deployment default (off unless the operator turned it on)

boolean
entityOverlap

Multi-signal weight, 0 to 1, of overlap between the entities two propositions mention; null uses the matcher’s own default. Used only with the multi-signal matcher

number format: double
groundingOverlap

Multi-signal weight, 0 to 1, of overlap between the sources two propositions are grounded in; null uses the matcher’s own default. Used only with the multi-signal matcher

number format: double
lexical

Multi-signal weight, 0 to 1, of lexical (wording) similarity; null uses the matcher’s own default. Used only with the multi-signal matcher

number format: double
matcher

How duplicates are decided: cosine (embedding similarity alone) or multi-signal (a weighted blend of the five signals below); null inherits the deployment default

string
provenanceOverlap

Multi-signal weight, 0 to 1, of overlap in where two propositions came from; null uses the matcher’s own default. Used only with the multi-signal matcher

number format: double
similarityThreshold

Similarity floor, 0 to 1, at which two propositions cluster as near-duplicates; null inherits the deployment default

number format: double
vector

Multi-signal weight, 0 to 1, of embedding similarity; null uses the matcher’s own default. Used only with the multi-signal matcher

number format: double
fallbackCodingLlm

Model the app builder uses for the one call after a failed build with codingLlm, typically a stronger one; null inherits the deployment fallback, if any

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
filesTrustedRoots
required

Absolute directories the files producer may follow symlinks into from the world’s data/ sandbox; relative or nonexistent entries are ignored. Empty by default: nothing outside the sandbox is readable

Array<string>
lensLlm

Model that turns a natural-language question into Cypher (kg-ask); null inherits assistant.lens.llm

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
llmRoles
required

This world’s LLM role overrides, keyed by role id (e.g. code_best, chat_best): the model and reasoning effort every call naming that role resolves to here. An absent role inherits the deployment’s embabel.models.llms; empty by default

object
key
additional properties

How one purpose, or one role override, picks its model: by role or by pinned model, with optional temperature and reasoning effort. Read and written by the /config/llms, /config/chat and /config/llm-roles endpoints

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
mcpMode

What a connected coding agent is here to do: ASSISTANT (use the world) or DEVELOPER (also install and author realms); null means ASSISTANT

string
Allowed values: ASSISTANT DEVELOPER
memoryLlm

Stored setting for memory extraction, chat_cheap role by default; nothing reads it at runtime

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
notificationRouting

The user’s notification routing; null inherits the deployment defaults for every tier and for quiet hours

object
quietHours

The user’s quiet-hours window, replacing the deployment one; null inherits the deployment window

object
enabled
required

Whether the window is applied; false means no quiet hours for this user, even when the deployment has them

boolean
end
required

End of the window, HH:mm local time, inclusive

string
start
required

Start of the window, HH:mm local time; a window whose start is after its end runs past midnight

string
tierChannels
required

Urgency tier name (AMBIENT, DEFERRED, TIMELY, INTERRUPTIVE, ACTING, ESCALATING) to the channel kinds it reaches, such as vaadin, telegram, discord or sms. A tier present here replaces the deployment default for that tier; an absent tier inherits it

object
key
additional properties
Array<string>
unique items
plannerLlm

Model the typed planner uses to decompose a /plan request into an action graph; null follows the chat model

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
rankerLlm

Model the chat ranker uses to extract typed inputs from a message; null inherits assistant.ranker.llm

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
sandboxDockerimage

Docker image for this world’s code-mode sandbox; null uses the appliance’s sandbox image (ghcr.io/embabel/assistant-sandbox:latest unless the operator set assistant.sandbox-image)

string
timeouts

Execution-timeout overrides; null inherits every deployment default

object
kgQuerySeconds

Ceiling for one knowledge-graph (Virtual Cypher) query execution, in seconds; null, zero or negative inherits assistant.lens.kg-query-timeout

integer format: int64
scriptSeconds

Ceiling for one code-mode sandbox script run, in seconds; null, zero or negative inherits assistant.code-mode.script-timeout

integer format: int64
toolRouterLlm

Stored setting for tool routing, chat_cheap role by default; nothing reads it at runtime

object
description

What a custom role in llmRoles is for, since built-in roles are described by the catalogue; unused on a purpose setting

string
model

Model name to pin. For a purpose, used only when no role is set; in an llmRoles entry, the model the role resolves to. Null or blank pins nothing

string
reasoningEffort

Reasoning effort: none, minimal, low, medium, high or xhigh (none turns a thinking model’s reasoning off); null leaves the provider’s default

string
role

Role id to select the model by (e.g. chat_best, code_best); for a purpose it takes precedence over model. Not used in an llmRoles entry

string
temperature

Sampling temperature; null keeps the default’s temperature

number format: double
version
required

World format version the file was last written at; currently 2. Older versions are migrated at load

integer format: int32
webFetch

Fetch and crawl tool strategies; null inherits the server defaults

object
crawler

Site-crawl strategy for crawl; bounded is the only one, so any other name falls back to it. Null or blank inherits the server default

string
retriever

Page retriever for fetch: tika (in-process fetch and extraction) or reader-service (only when the server configures one); null or blank inherits the server default, and an unknown name falls back to tika

string
welcome

What a surface opens the first time each person arrives in this world; null leaves it to the client, which opens next steps

object
open
required

Next-steps (the What next panel), tour: (start the tour whose file declares that id), chat, or none. Stored as written and interpreted by the client, which treats a value it does not know as next-steps

string

Example

next-steps