Settings API¶
Configuration management endpoints.
Prefix: /api/settings
General Settings¶
Get All Settings¶
Returns the complete settings object.
Paths and Backend¶
Body:
Switch Backend¶
Body: {"backend": "org"} (org, markdown, json, sql)
Import Data¶
Body:
AI Settings¶
Get AI Config¶
Update AI Config¶
Body (all fields optional):
{
"ollama_url": "http://localhost:11434",
"ollama_cloud_url": "https://ollama.com",
"ollama_api_key": "your-key",
"lm_studio_url": "http://localhost:1234",
"claude_api_key": "sk-ant-...",
"openrouter_url": "https://openrouter.ai/api/v1",
"openrouter_api_key": "sk-or-...",
"openai_url": "https://api.openai.com",
"openai_api_key": "sk-...",
"brave_api_key": "...",
"tavily_api_key": "...",
"advisor_model": "ollama:qwen3:14b",
"cron_model": "ollama:gemma4:latest"
}
Available Models¶
Queries all configured providers and returns available models.
Provider Probe¶
Returns reachability status for each provider.
Claude CLI Status¶
GitHub Settings¶
Body: {"token": "ghp_...", "base_url": "https://api.github.com"}
KB Sources¶
Body: Array of {"label": "...", "path": "..."} objects.
Advisor Personality Files¶
Body: {"soul": "SOUL.md content...", "user": "USER.md content..."}
Backup Settings¶
Body: {"directory": "~/.kaisho/backups", "keep": 5, "interval_hours": 24}
Invoice Export¶
URL Allowlist¶
Body: Array of URL strings.
States and Tags¶
Task States¶
POST /api/settings/states
PATCH /api/settings/states/{name}
DELETE /api/settings/states/{name}
PUT /api/settings/states/order
Tags¶
Custom Types¶
POST /api/settings/customer_types
DELETE /api/settings/customer_types/{name}
POST /api/settings/inbox_types
DELETE /api/settings/inbox_types/{name}
POST /api/settings/inbox_channels
DELETE /api/settings/inbox_channels/{name}
Profiles¶
GET /api/settings/user
PATCH /api/settings/user/profile
GET /api/settings/profiles
PUT /api/settings/profile
POST /api/settings/profiles
PUT /api/settings/profiles/{name}
POST /api/settings/profiles/{name}/copy
DELETE /api/settings/profiles/{name}
Version¶
Response: