Skip to main content
PATCH
Update Settings

Authorizations

X-Session-API-Key
string
header
required

Body

application/json

Request model for PATCH /api/settings.

Supports partial updates via diff objects that are deep-merged with existing settings. misc_settings_diff is deep-merged into the persisted misc_settings block with the same semantics as agent_settings_diff and conversation_settings_diff: nested dicts merge recursively, and lists are replaced wholesale rather than merged. Because misc_settings is opaque to the agent-server, callers are responsible for the shape of what they store there.

active_agent_profile_id
string | null

Stable id of the active AgentProfile to persist; null clears it.

Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
active_meta_profile
string | null

Name of the active meta-profile to persist; null clears it.

Pattern: ^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$
active_profile
string | null

Name of the active LLM profile to persist; null clears it.

Pattern: ^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$
agent_settings_diff
_AgentSettingsPatchContract · object | null
conversation_settings_diff
Conversation Settings Diff · object | null
misc_settings_diff
Misc Settings Diff · object | null

Response

Successful Response

Response model for GET /api/settings.

Contains the full settings payload including agent configuration, conversation settings, active LLM profile, miscellaneous frontend-owned settings, and a flag indicating whether an LLM API key is set.

The agent_settings and conversation_settings fields are raw dicts because the server controls secret serialization via context. Use the typed accessor methods for validation:

Example::

misc_settings is an opaque container for frontend-owned data that the agent-server persists but does not interpret — see the docstring of :class:PersistedSettings.misc_settings.

agent_settings
_AgentSettingsContract · object
required
conversation_settings
Conversation Settings · object
required
llm_api_key_is_set
boolean
required
active_agent_profile_id
string | null

Stable id of the currently active AgentProfile, if one is set.

active_meta_profile
string | null

Name of the currently active meta-profile, if one is selected.

active_profile
string | null

Name of the currently active LLM profile, if one is selected.

misc_settings
Misc Settings · object