SoAI provides OpenAI-compatible and Anthropic-compatible inference endpoints alongside the authenticated APIs that power the WebUI. The inventory below lists the HTTP operations available in the current SoAI release.
Use the SoAI WebUI for routine administration. The management routes exist for integrations and automation, but they use the same access controls as their WebUI controls and can change with the product. For browser-facing tasks, start with the linked guide rather than calling a WebUI route directly.
Manage personal memory
The authenticated /api/v1/webui/users/me/memory/entries library returns stable entry IDs,
opaque entry revisions, profile_form, and profile_revision. Relationships include
both endpoint IDs and names. The original GET /api/v1/webui/users/me/memory snapshot retains
its existing response shape.
Create a note with POST /entries under the memory route, supplying an opaque id that fits one URL path segment,
name, and content. Creation does not overwrite an existing ID or title.
Edit an entry with PATCH /entries/{entry_id}, an expected_revision, and an optional
name or observation. An observation contains id and content;
a null observation ID adds a fact, while an existing ID edits that fact alone.
Entry, observation, and relationship deletion require expected_revision in the query string.
Relationship updates preserve the relationship ID and require from_entity_id,
to_entity_id, relation_type, and expected_revision. One endpoint must
remain connected to the addressed entry. A changed revision returns a conflict; reload and review before
submitting another mutation. A lost response is not proof that a request failed, so inspect the current
saved state rather than automatically repeating creation or deletion.
Structured profile facts use PUT /api/v1/webui/users/me/memory/chat-profile. Include the
library's profile_revision as expected_revision to reject stale updates. Omitted
fields remain unchanged in revision-checked requests. Legacy requests without this precondition retain
their unconditional update behavior and existing response shape. Facts and display-name defaults save
together; removing a profile entry does not remove those display-name defaults.
Choose and secure API access
| Surface | Use it for | Authentication |
|---|---|---|
/v1/* |
OpenAI-compatible inference, files, stored completions, and Responses. | API key when keys exist. |
/v1/messages* |
Anthropic-compatible Messages requests and token counting. | The same API-key policy as /v1/*. |
/api/v1/* |
WebUI, administration, models, plugins, hardware, tasks, and integrations. | Protected management routes use a WebUI session, CSRF protection for mutations, and route-specific permissions. Provider callbacks use provider verification. |
/api/v1/system/ws |
WebUI real-time updates and interactive sessions. | Authenticated WebSocket connection. |
Authentication and runtime schema
Finish the first-run setup wizard before using the compatible APIs.
After setup, /v1/* is open while the API-key store has no records. Creating the first
key makes API-key authentication required; removing every key deliberately restores the open state. An administrator
with API key management (OPENAI_API_ADMIN) permission selects the Settings button at the right of the header, then chooses
Settings and OpenAI to manage keys. See
Authentication and API keys for the exact WebUI controls, quotas,
assignments, and security consequences.
Authorization: Bearer <OPENAI_API_KEY>
Anthropic-compatible clients may send the same value in x-api-key or as a bearer token. If both are
sent, they must match. The browser uses its signed-in WebUI session; direct state-changing calls to protected
/api/v1/* routes also need the CSRF protection expected by that surface.
POST /api/v1/webui/skills/import-batch and
GET /api/v1/webui/skills/import-batches/{upload_id} require MCP usage
(MCP_USE). The WebUI uses these routes for all skill
uploads. Library contents and conversation selections remain private to their owning account.
Fetch the live OpenAPI document from /api/v1/openapi.json or /v1/openapi.json. Both paths
return the same schema and use the compatible API access policy. The document describes request parameters and
response shapes more precisely than this route list.
Inference and management surfaces
The OpenAI-compatible surface uses ordinary REST responses. Where an endpoint supports stream=true, it
emits OpenAI Server-Sent Events with data: {...} frames followed by
data: [DONE]. Do not send WebSocket envelopes on those streams.
The Anthropic-compatible Messages surface requires anthropic-version: 2023-06-01. Its
streaming response uses Anthropic named Server-Sent Events. It accepts the
Messages and token-counting requests listed below;
Claude Code explains its WebUI model setup and client configuration.
Responses is a full lifecycle surface rather than a create-only endpoint, with creation, retrieval, cancellation, deletion, input-item retrieval, input-token counting, and compaction. Read OpenAI-compatible Responses API before using stored or background responses.
Provider errors and retry guidance
A model that cannot satisfy a request's required capability returns HTTP 422 with
error.type set to invalid_request_error and error.param set to
model. For embeddings, select a model that supports embeddings. A virtual model remains usable when
an eligible member supports the request; a request whose capability combination matches no single member is
rejected with that explanation.
An unknown model ID returns HTTP 400 with error.code set to model_not_found and
error.param set to model. Install or register the requested model, or choose an ID from
/v1/models. A failed download does not make its intended model available to the API.
Provider failures use the standard error response object. When the provider identifies a rejected
parameter, error.param names it; the safe error message includes available recovery guidance and a
sanitized provider explanation. Authentication failures return HTTP 401, while permission failures return HTTP 403
with permission_error. Billing failures remain distinct from temporary rate limits.
A valid provider cooldown is returned in Retry-After when the HTTP response has not started. SoAI
honors that minimum during eligible retries, including delays longer than 30 seconds. A retry that would consume the
remaining recovery budget is declined. Once streaming has started, a terminal error uses the existing stream format;
the HTTP status and headers cannot change. Partial output remains available and is not replayed automatically.
Model capability overrides
Managing capabilities requires
MODEL_ADMIN permission. The
/api/v1/models/{universal_id}/capabilities/openai route retains these operations:
| Method | Effect |
|---|---|
PATCH |
Updates one capability's disabled override using category, token, and
enabled. Setting enabled to true removes its disabled override.
|
PUT |
Replaces the enabled and disabled overrides atomically. Send the complete overrides object
and the last observed expected snapshot; a stale snapshot returns HTTP 409 without
overwriting the newer change.
|
DELETE |
Removes the saved capability overrides. |
The model collection includes a read-only openai_base_profile derived from model and plugin evidence
before saved overrides and dependency suppression. It supplies the base capability values for Auto.
Conversation titles
Creating a conversation with POST /api/v1/webui/conversations preserves its supplied title by default.
Set the optional boolean title_auto_update_allowed to true to allow first-message and
automatic title updates. Saving a title with PATCH /api/v1/webui/conversations/{conv_id}/title
disables automatic replacement, even when the saved text is unchanged. Conversation metadata responses and
title update events include the committed title, permission, and last_modified_at_ms together.
Clones preserve the source permission; imported conversations and existing saved conversations keep their names.
Clients receiving older payloads should preserve known permission when the optional field is absent.
Conversation input queue
A steer sent to /api/v1/webui/conversations/{conv_id}/input-queue returns HTTP 409 when no
running turn can accept it. Set fallback_to_prompt to true to have SoAI queue it as an ordinary prompt
instead; the response's input_type shows which one was stored. The field is optional and only valid for
steers.
WebUI-first management guides
| Task | Use this guide |
|---|---|
| Application updates and recovery preparation | Updating SoAI |
| Backups, downloaded archives, and restoration | Backup and Restore |
| Core configuration fields, defaults, and validation | Configuration |
| Files, uploads, previews, transfers, and batch work | File explorer |
| Model downloads, registration, providers, and catalog state | Models catalog |
| Monitoring, hardware controls, metrics, and logs | Monitoring and observability |
| Plugin installation, providers, cloning, and runtime state | Install and manage plugins |
| Running work, cancellation requests, and user notifications | Tasks and notifications |
| Skill imports, supporting files, and conversation selections | Skills |
| Scheduled agent work, recurrence, limits, and run history | Automations |
| Telegram, Discord, and WhatsApp accounts | Connect messaging apps to SoAI |
| Users, access policy, collaboration settings, and sessions | Administration overview and Users, roles, and sessions |
Skill library and conversation selection
The authenticated WebUI skill routes manage a human account's private skill library and
the saved selection of an ordinary conversation. They do not enable personal skills for external inference calls.
Import takes a multipart file and an upload_id; reuse that ID only for the same bytes when recovering
an uncertain result, and query its receipt before retrying. Selection updates supply
expected_revision and skill_ids. A stale revision returns 409 with the
current selection so the client can review the conflict instead of overwriting it.
Transport and network boundaries
/api/v1/system/ws is the WebUI WebSocket endpoint.
It carries subscribed real-time resources and interactive sessions; it is not a general replacement for
OpenAI streaming, MCP streamable HTTP, or the REST API.
See Monitoring and observability for the freshness and reconnect
behavior users see in the WebUI.
SoAI also has a separate port-discovery listener. It binds the first available port from 7950 through
7960; GET / on that listener reports the main API port and scheme. That endpoint does not
belong to the main FastAPI schema below.
Reverse proxies and private access
Keep SoAI on the private network boundary defined in Security hardening.
A reverse proxy does not make public internet exposure a recommended deployment. If a proxy serves
private clients, it must preserve WebSocket upgrades for /api/v1/system/ws and must not buffer
compatible API streams. If the proxy passes forwarded headers, configure
SERVER.HTTP.PROXY.ENABLE_HEADERS
and restrict
SERVER.HTTP.PROXY.TRUSTED_NETWORKS
to the proxy networks. Continue with Network and TLS and the
Hardening checklist.
Complete HTTP inventory
This table covers every OpenAPI operation in the current Core route composition, including authenticated WebUI APIs. It intentionally excludes the separate port-discovery listener and the WebSocket endpoint because neither is an OpenAPI HTTP operation.
Actions and control
| Method | Endpoint | Operation |
|---|---|---|
POST |
/api/v1/actions/discover-models |
Discover models |
POST |
/api/v1/actions/plugins/check-for-updates |
Check for backend updates |
POST |
/api/v1/actions/plugins/update-all-backends |
Update all plugin backends |
POST |
/api/v1/actions/plugins/{plugin_name}/check-for-updates |
Check backend update |
POST |
/api/v1/actions/plugins/{plugin_name}/disable |
Disable plugin |
POST |
/api/v1/actions/plugins/{plugin_name}/enable |
Enable plugin |
POST |
/api/v1/actions/plugins/{plugin_name}/stop |
Stop plugin |
POST |
/api/v1/actions/processes/{pid}/kill |
Kill process |
POST |
/api/v1/actions/software/check-for-updates |
Check for software updates |
POST |
/api/v1/actions/stop-all-plugins |
Stop all plugins |
Anthropic API surface
| Method | Endpoint | Operation |
|---|---|---|
POST |
/v1/messages |
Messages |
POST |
/v1/messages/count_tokens |
Count tokens |
Automations
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/automations |
List automations |
POST |
/api/v1/automations |
Create automation |
GET |
/api/v1/automations/mcp/tools |
List automation MCP tools |
GET |
/api/v1/automations/occurrences |
Get automation occurrences |
POST |
/api/v1/automations/occurrences/delete |
Delete automation occurrences |
GET |
/api/v1/automations/runs |
List automation runs |
GET |
/api/v1/automations/runs/active |
List active automation runs |
GET |
/api/v1/automations/runs/{run_id} |
Get automation run |
GET |
/api/v1/automations/schedule-preview |
Preview schedule |
DELETE |
/api/v1/automations/{automation_id} |
Delete automation |
GET |
/api/v1/automations/{automation_id} |
Get automation |
PATCH |
/api/v1/automations/{automation_id} |
Update automation |
POST |
/api/v1/automations/{automation_id}/run-now |
Run automation now |
Backup management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/backups |
List backups |
POST |
/api/v1/backups |
Create backup |
DELETE |
/api/v1/backups/{backup_id} |
Delete backup |
GET |
/api/v1/backups/{backup_id}/export |
Export backup |
POST |
/api/v1/backups/{backup_id}/restore |
Restore backup |
POST |
/api/v1/backups/{backup_id}/verify |
Verify backup |
Configuration management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/configs |
List all configs |
GET |
/api/v1/configs/{config_name} |
Get specific config |
PATCH |
/api/v1/configs/{config_name} |
Patch specific config |
Dynamic routing
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/routing/config |
Get routing config |
GET |
/api/v1/routing/virtual-models |
List virtual models |
POST |
/api/v1/routing/virtual-models |
Create virtual model |
DELETE |
/api/v1/routing/virtual-models/{name} |
Virtual model delete |
GET |
/api/v1/routing/virtual-models/{name} |
Virtual model get |
PATCH |
/api/v1/routing/virtual-models/{name} |
Virtual model update |
PATCH |
/api/v1/routing/virtual-models/{name}/enabled |
Virtual model set enabled |
File explorer
| Method | Endpoint | Operation |
|---|---|---|
POST |
/api/v1/file-explorer/batch-copy |
Batch copy entries |
POST |
/api/v1/file-explorer/batch-copy-task |
Start batch copy task |
POST |
/api/v1/file-explorer/batch-delete |
Batch delete entries |
POST |
/api/v1/file-explorer/batch-delete-task |
Start batch delete task |
POST |
/api/v1/file-explorer/batch-metadata |
Get metadata batch |
POST |
/api/v1/file-explorer/batch-move |
Batch move entries |
POST |
/api/v1/file-explorer/batch-move-task |
Start batch move task |
POST |
/api/v1/file-explorer/copy |
Copy entry |
DELETE |
/api/v1/file-explorer/delete |
Delete entry |
GET |
/api/v1/file-explorer/download |
Download file |
POST |
/api/v1/file-explorer/download-selection |
Download selection |
POST |
/api/v1/file-explorer/hash |
Start hash task |
GET |
/api/v1/file-explorer/list |
List directory |
POST |
/api/v1/file-explorer/listings |
Start listing |
DELETE |
/api/v1/file-explorer/listings/{listing_id} |
Release listing |
GET |
/api/v1/file-explorer/listings/{listing_id} |
Get listing page |
GET |
/api/v1/file-explorer/listings/{listing_id}/locate |
Locate listing entry |
GET |
/api/v1/file-explorer/metadata |
Get metadata |
POST |
/api/v1/file-explorer/mkdir |
Create directory |
POST |
/api/v1/file-explorer/move |
Move entry |
GET |
/api/v1/file-explorer/preview |
Preview file |
GET |
/api/v1/file-explorer/read |
Read text file |
GET |
/api/v1/file-explorer/search |
Search directory |
POST |
/api/v1/file-explorer/upload |
Upload file |
POST |
/api/v1/file-explorer/upload-batch |
Upload batch |
PUT |
/api/v1/file-explorer/write |
Write text file |
Hardware management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/hardware/capabilities |
Get system capabilities |
GET |
/api/v1/hardware/export |
Export hardware history CSV |
GET |
/api/v1/hardware/gpu/capabilities |
Get GPU capabilities |
POST |
/api/v1/hardware/gpu/settings |
Set GPU settings |
GET |
/api/v1/hardware/gpu/slots |
List GPU slots API |
DELETE |
/api/v1/hardware/gpu/slots/{slot} |
Clear GPU slot API |
POST |
/api/v1/hardware/gpu/slots/{slot}/apply |
Apply GPU slot API |
PATCH |
/api/v1/hardware/gpu/slots/{slot}/boot |
Toggle GPU slot boot API |
POST |
/api/v1/hardware/gpu/slots/{slot}/preview |
Preview GPU slot API |
POST |
/api/v1/hardware/gpu/slots/{slot}/store |
Store GPU slot API |
GET |
/api/v1/hardware/gpu/soaibench/history/export |
Export SoAI Bench history CSV API |
GET |
/api/v1/hardware/gpu/soaibench/runs |
List SoAI Bench history API |
POST |
/api/v1/hardware/gpu/soaibench/runs |
Start SoAI Bench run API |
DELETE |
/api/v1/hardware/gpu/soaibench/runs/{run_id} |
Delete SoAI Bench local run API |
GET |
/api/v1/hardware/gpu/soaibench/runs/{run_id} |
Get SoAI Bench run API |
POST |
/api/v1/hardware/gpu/soaibench/runs/{run_id}/publication |
Publish SoAI Bench run API |
GET |
/api/v1/hardware/gpu/soaibench/runs/{run_id}/publication/preview |
Preview SoAI Bench publication API |
POST |
/api/v1/hardware/gpu/soaibench/runs/{run_id}/stop |
Stop SoAI Bench run API |
GET |
/api/v1/hardware/history |
Get hardware history |
GET |
/api/v1/hardware/processes |
List processes |
GET |
/api/v1/hardware/snapshot |
Get hardware snapshot |
Messaging and platforms
| Method | Endpoint | Operation |
|---|---|---|
POST |
/api/v1/messaging/telegram/webhook |
Telegram webhook |
GET |
/api/v1/messaging/whatsapp/webhook |
WhatsApp webhook verify |
POST |
/api/v1/messaging/whatsapp/webhook |
WhatsApp webhook |
Metrics monitoring
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/metrics |
Get system metrics |
GET |
/api/v1/metrics/capabilities |
Get metrics capabilities |
GET |
/api/v1/metrics/export |
Export metrics history CSV |
GET |
/api/v1/metrics/history |
Get metrics history |
Model Context Protocol
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/mcp/client/interactions |
List MCP client interactions |
POST |
/api/v1/mcp/client/interactions/{task_id}/resolve |
Resolve MCP client interaction |
GET |
/api/v1/mcp/client/roots |
Get MCP client roots |
PUT |
/api/v1/mcp/client/roots |
Update MCP client roots |
GET |
/api/v1/mcp/connections |
List MCP connections |
GET |
/api/v1/mcp/oauth/callback |
MCP OAuth callback |
GET |
/api/v1/mcp/oauth/client-metadata.json |
MCP OAuth client metadata |
GET |
/api/v1/mcp/prompts |
List MCP prompts |
GET |
/api/v1/mcp/resources |
MCP resources list |
GET |
/api/v1/mcp/search-api-keys |
List MCP search API keys |
DELETE |
/api/v1/mcp/search-api-keys/{provider} |
Delete MCP search API key |
PUT |
/api/v1/mcp/search-api-keys/{provider} |
Set MCP search API key |
GET |
/api/v1/mcp/servers |
List MCP servers |
POST |
/api/v1/mcp/servers |
Add MCP server |
DELETE |
/api/v1/mcp/servers/{server_id} |
Remove MCP server |
PATCH |
/api/v1/mcp/servers/{server_id} |
Update MCP server |
POST |
/api/v1/mcp/servers/{server_id}/connect |
Connect MCP server |
POST |
/api/v1/mcp/servers/{server_id}/disconnect |
Disconnect MCP server |
POST |
/api/v1/mcp/servers/{server_id}/oauth/clear |
Clear MCP OAuth |
POST |
/api/v1/mcp/servers/{server_id}/oauth/start |
Start MCP OAuth |
GET |
/api/v1/mcp/servers/{server_id}/oauth/status |
Get MCP OAuth status |
GET |
/api/v1/mcp/status |
Get MCP status |
GET |
/api/v1/mcp/tools |
List MCP tools |
DELETE |
/mcp |
MCP server streamable HTTP delete |
GET |
/mcp |
MCP server streamable HTTP stream |
POST |
/mcp |
MCP server streamable HTTP endpoint |
GET |
/mcp/whoami |
MCP whoami |
Model management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/models |
List models |
POST |
/api/v1/models/download |
Download model |
GET |
/api/v1/models/manual-install |
Get model manual install path |
DELETE |
/api/v1/models/{universal_id} |
Delete model |
GET |
/api/v1/models/{universal_id} |
Get model details |
DELETE |
/api/v1/models/{universal_id}/alias |
Model delete alias |
PATCH |
/api/v1/models/{universal_id}/alias |
Model update alias |
DELETE |
/api/v1/models/{universal_id}/capabilities/openai |
Model reset OpenAI capabilities |
PATCH |
/api/v1/models/{universal_id}/capabilities/openai |
Model update OpenAI capabilities |
PUT |
/api/v1/models/{universal_id}/capabilities/openai |
Model replace OpenAI capabilities |
PATCH |
/api/v1/models/{universal_id}/enabled |
Model set enabled |
DELETE |
/api/v1/models/{universal_id}/parameters |
Model delete parameters |
GET |
/api/v1/models/{universal_id}/parameters |
Get model parameters |
PATCH |
/api/v1/models/{universal_id}/parameters |
Model update parameters |
OpenAI API surface
| Method | Endpoint | Operation |
|---|---|---|
POST |
/v1/audio/speech |
Handle text to speech |
POST |
/v1/audio/transcriptions |
Handle audio transcription |
POST |
/v1/audio/translations |
Handle audio translation |
GET |
/v1/chat/completions |
List chat completions |
POST |
/v1/chat/completions |
Handle chat completions |
DELETE |
/v1/chat/completions/{completion_id} |
Delete chat completion |
GET |
/v1/chat/completions/{completion_id} |
Get chat completion |
POST |
/v1/chat/completions/{completion_id} |
Update chat completion |
GET |
/v1/chat/completions/{completion_id}/messages |
Get chat completion messages |
POST |
/v1/completions |
Handle completions |
POST |
/v1/embeddings |
Handle embeddings |
POST |
/v1/images/edits |
Handle image edit |
POST |
/v1/images/generations |
Handle image generation |
POST |
/v1/images/variations |
Handle image variation |
GET |
/v1/models |
List models OpenAI |
DELETE |
/v1/models/{model} |
Delete model OpenAI |
GET |
/v1/models/{model} |
Get model details OpenAI |
POST |
/v1/responses |
Handle responses |
POST |
/v1/responses/compact |
Responses compact |
POST |
/v1/responses/input_tokens |
Responses input tokens |
DELETE |
/v1/responses/{response_id} |
Delete response |
GET |
/v1/responses/{response_id} |
Get response |
POST |
/v1/responses/{response_id}/cancel |
Cancel response |
GET |
/v1/responses/{response_id}/input_items |
Get response input items |
OpenAI files
| Method | Endpoint | Operation |
|---|---|---|
GET |
/v1/files |
List files |
POST |
/v1/files |
Upload file |
DELETE |
/v1/files/{file_id} |
Delete file |
GET |
/v1/files/{file_id} |
Retrieve file |
GET |
/v1/files/{file_id}/content |
Retrieve file content |
Plugin and provider management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/plugins |
Get plugin list |
GET |
/api/v1/plugins/capabilities-manifest |
Get plugin capabilities manifest |
POST |
/api/v1/plugins/download |
Download plugin |
GET |
/api/v1/plugins/manual-install |
Get plugin manual install path |
POST |
/api/v1/plugins/upload |
Upload plugin |
DELETE |
/api/v1/plugins/{plugin_name} |
Delete plugin |
PUT |
/api/v1/plugins/{plugin_name}/backend-variant-selection |
Save backend variant selection |
GET |
/api/v1/plugins/{plugin_name}/backend-variants |
Get backend variants |
POST |
/api/v1/plugins/{plugin_name}/clone |
Clone plugin |
POST |
/api/v1/plugins/{plugin_name}/install-backend |
Install backend |
GET |
/api/v1/plugins/{plugin_name}/logo/{archive_sha256}.png |
Get plugin logo |
HEAD |
/api/v1/plugins/{plugin_name}/logo/{archive_sha256}.png |
Get plugin logo |
GET |
/api/v1/plugins/{plugin_name}/model-search |
Search remote models for plugin |
GET |
/api/v1/plugins/{plugin_name}/models/{model_id}/variants |
Get model variants for plugin |
POST |
/api/v1/plugins/{plugin_name}/override-incompatibility |
Override incompatibility |
GET |
/api/v1/plugins/{plugin_name}/providers |
Provider list for plugin |
POST |
/api/v1/plugins/{plugin_name}/providers |
Create provider for plugin |
DELETE |
/api/v1/plugins/{plugin_name}/providers/{provider_id} |
Provider delete external |
PATCH |
/api/v1/plugins/{plugin_name}/providers/{provider_id} |
Provider update external |
POST |
/api/v1/plugins/{plugin_name}/remove-backend |
Remove backend |
POST |
/api/v1/plugins/{plugin_name}/update-backend |
Update backend |
Search
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/search |
Global search |
Software management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/software/update-diagnostics/{task_id} |
Get update diagnostics |
GET |
/api/v1/software/update-preparation |
Get update preparation |
POST |
/api/v1/software/update-soai |
Update SoAI software |
System and monitoring
| Method | Endpoint | Operation |
|---|---|---|
DELETE |
/api/v1/system/access-control/policy |
Clear access control policy |
GET |
/api/v1/system/access-control/policy |
Get access control policy |
PUT |
/api/v1/system/access-control/policy |
Update access control policy |
POST |
/api/v1/system/admin/configuration/reset |
Configuration reset system |
POST |
/api/v1/system/admin/factory-reset |
Factory reset system |
GET |
/api/v1/system/connect-pairing |
System connect pairing |
GET |
/api/v1/system/database/operations/{operation_id} |
Get database operation status |
POST |
/api/v1/system/hardware/history/reset |
Reset hardware history |
GET |
/api/v1/system/health |
System health check |
GET |
/api/v1/system/info |
System info |
PUT |
/api/v1/system/instance-name |
Update instance name |
GET |
/api/v1/system/license |
System license |
GET |
/api/v1/system/limits |
Get system limits |
GET |
/api/v1/system/logs/sources |
Get log sources |
GET |
/api/v1/system/logs/{source_name} |
Get logs snapshot |
POST |
/api/v1/system/metrics/reset |
Reset all metrics |
GET |
/api/v1/system/plugins/{plugin_name}/check-circuit-breaker |
Check plugin circuit breaker |
POST |
/api/v1/system/plugins/{plugin_name}/reset-circuit-breaker |
Reset plugin circuit breaker |
POST |
/api/v1/system/power/hibernate |
Hibernate host system |
GET |
/api/v1/system/power/operations/active |
Get active power operation |
GET |
/api/v1/system/power/operations/{operation_id} |
Get power operation |
POST |
/api/v1/system/power/operations/{operation_id}/cancel |
Cancel power operation |
POST |
/api/v1/system/power/reboot |
Reboot host system |
POST |
/api/v1/system/power/restart-application |
Restart SoAI application |
POST |
/api/v1/system/power/shutdown |
Shutdown host system |
POST |
/api/v1/system/power/shutdown-application |
Shutdown SoAI application |
POST |
/api/v1/system/power/suspend |
Suspend host system |
GET |
/api/v1/system/requirements |
System requirements |
GET |
/api/v1/system/security |
Get system security |
GET |
/api/v1/system/security/hardening |
Get security hardening audit |
GET |
/api/v1/system/states |
Get state definitions |
GET |
/api/v1/system/status |
Get system status |
GET |
/api/v1/system/status/main |
Get SoAI main status |
Task management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/tasks |
List tasks |
GET |
/api/v1/tasks/active |
List active tasks |
POST |
/api/v1/tasks/cancel-all |
Cancel all tasks |
GET |
/api/v1/tasks/cancellations |
Get cancellation registry snapshot |
POST |
/api/v1/tasks/cancellations/reset |
Reset cancellation registry |
POST |
/api/v1/tasks/cancellations/sweep |
Sweep cancellation registry |
POST |
/api/v1/tasks/software-update/log |
Log software update |
GET |
/api/v1/tasks/{task_id} |
Get task |
POST |
/api/v1/tasks/{task_id}/cancel |
Cancel task |
WebUI and user management
| Method | Endpoint | Operation |
|---|---|---|
POST |
/api/v1/webui/auth/login |
Login |
POST |
/api/v1/webui/auth/logout |
Logout |
POST |
/api/v1/webui/auth/session-rotation/recover |
Recover session rotation |
DELETE |
/api/v1/webui/chat/presets |
Reset chat presets |
GET |
/api/v1/webui/chat/presets |
List chat presets |
POST |
/api/v1/webui/chat/presets |
Create chat preset |
DELETE |
/api/v1/webui/chat/presets/{preset_id} |
Delete chat preset |
PATCH |
/api/v1/webui/chat/presets/{preset_id} |
Rename chat preset |
PUT |
/api/v1/webui/chat/presets/{preset_id} |
Replace chat preset |
DELETE |
/api/v1/webui/conversations |
Delete all conversations |
GET |
/api/v1/webui/conversations |
List my conversations |
POST |
/api/v1/webui/conversations |
Create new conversation |
GET |
/api/v1/webui/conversations/archived |
List archived conversations |
GET |
/api/v1/webui/conversations/archived/search |
Search archived conversations |
POST |
/api/v1/webui/conversations/batch-delete |
Delete selected conversations |
POST |
/api/v1/webui/conversations/export/pdf |
Start conversation PDF export |
GET |
/api/v1/webui/conversations/export/pdf/{task_id}/download |
Download conversation PDF export |
DELETE |
/api/v1/webui/conversations/{conv_id} |
Delete a conversation |
GET |
/api/v1/webui/conversations/{conv_id} |
Get single conversation |
POST |
/api/v1/webui/conversations/{conv_id}/absolute-paths/resolve |
Resolve absolute paths |
POST |
/api/v1/webui/conversations/{conv_id}/agent/compact/regenerate |
Regenerate agent compaction |
POST |
/api/v1/webui/conversations/{conv_id}/agent/compact/remove-boundary |
Remove agent compaction boundary |
POST |
/api/v1/webui/conversations/{conv_id}/agent/compact/start |
Start agent compaction |
PATCH |
/api/v1/webui/conversations/{conv_id}/agent/plan |
Patch agent plan |
PATCH |
/api/v1/webui/conversations/{conv_id}/agent/todo |
Patch agent todo |
POST |
/api/v1/webui/conversations/{conv_id}/agent/tools/shell/stop |
Stop shell tool call |
POST |
/api/v1/webui/conversations/{conv_id}/agent/turns/{turn_id}/cancel |
Cancel agent turn |
PATCH |
/api/v1/webui/conversations/{conv_id}/archived |
Patch conversation archived |
GET |
/api/v1/webui/conversations/{conv_id}/assistant-turns/{assistant_turn_at_ms}/variants/{model_variant_index}/stream-state |
Get assistant turn variant stream state |
POST |
/api/v1/webui/conversations/{conv_id}/attachments |
Stage attachment |
DELETE |
/api/v1/webui/conversations/{conv_id}/attachments/{attachment_id} |
Delete attachment |
GET |
/api/v1/webui/conversations/{conv_id}/attachments/{attachment_id} |
Get attachment |
GET |
/api/v1/webui/conversations/{conv_id}/attachments/{attachment_id}/content |
Get attachment content |
POST |
/api/v1/webui/conversations/{conv_id}/attention/rendered |
Acknowledge conversation attention rendered |
POST |
/api/v1/webui/conversations/{conv_id}/clone |
Clone conversation |
PATCH |
/api/v1/webui/conversations/{conv_id}/color |
Patch conversation color |
POST |
/api/v1/webui/conversations/{conv_id}/comparison-turns/preflight |
Preflight comparison turn |
DELETE |
/api/v1/webui/conversations/{conv_id}/draft |
Delete conversation draft |
GET |
/api/v1/webui/conversations/{conv_id}/draft |
Get conversation draft |
PUT |
/api/v1/webui/conversations/{conv_id}/draft |
Put conversation draft |
POST |
/api/v1/webui/conversations/{conv_id}/export/json |
Export conversation JSON |
PATCH |
/api/v1/webui/conversations/{conv_id}/favorite |
Patch conversation favorite |
GET |
/api/v1/webui/conversations/{conv_id}/input-queue |
List input queue items |
POST |
/api/v1/webui/conversations/{conv_id}/input-queue |
Enqueue input queue item |
POST |
/api/v1/webui/conversations/{conv_id}/input-queue/resume |
Resume input queue |
DELETE |
/api/v1/webui/conversations/{conv_id}/input-queue/{item_id} |
Delete input queue item |
GET |
/api/v1/webui/conversations/{conv_id}/interactions/focus |
Resolve conversation interaction focus |
GET |
/api/v1/webui/conversations/{conv_id}/interactions/pending |
List pending conversation interactions |
GET |
/api/v1/webui/conversations/{conv_id}/interactions/{interaction_type}/pending |
Get pending conversation interaction |
POST |
/api/v1/webui/conversations/{conv_id}/interactions/{interaction_type}/{task_id}/resolve |
Resolve conversation interaction |
POST |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/claim |
Claim knowledge attachments |
GET |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/draft |
List draft knowledge attachments |
DELETE |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/{knowledge_attachment_id} |
Remove draft knowledge attachment |
GET |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/{knowledge_attachment_id} |
Get knowledge attachment |
POST |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/{knowledge_attachment_id}/cancel |
Cancel knowledge attachment |
GET |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/{knowledge_attachment_id}/items |
List knowledge attachment items |
POST |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/{knowledge_attachment_id}/items/query |
Query knowledge attachment items |
POST |
/api/v1/webui/conversations/{conv_id}/knowledge-attachments/{knowledge_attachment_id}/items/{item_id}/preview |
Preview knowledge attachment item |
GET |
/api/v1/webui/conversations/{conv_id}/mcp/config |
Get MCP config |
PATCH |
/api/v1/webui/conversations/{conv_id}/mcp/config |
Update MCP config |
GET |
/api/v1/webui/conversations/{conv_id}/mcp/tools |
List MCP tools |
POST |
/api/v1/webui/conversations/{conv_id}/messages |
Append conversation messages |
PUT |
/api/v1/webui/conversations/{conv_id}/messages |
Update conversation messages |
POST |
/api/v1/webui/conversations/{conv_id}/messages/delete |
Delete conversation message |
POST |
/api/v1/webui/conversations/{conv_id}/messages/regenerate |
Regenerate conversation message |
GET |
/api/v1/webui/conversations/{conv_id}/messages/regenerate/latest-status |
Get latest conversation regeneration status |
GET |
/api/v1/webui/conversations/{conv_id}/messages/regenerate/status |
Get conversation regeneration status |
POST |
/api/v1/webui/conversations/{conv_id}/messages/resubmit |
Resubmit conversation user message |
GET |
/api/v1/webui/conversations/{conv_id}/messages/running-activity |
Get conversation running activity |
GET |
/api/v1/webui/conversations/{conv_id}/messages/sync-cursor |
Get conversation message sync cursor |
POST |
/api/v1/webui/conversations/{conv_id}/messages/truncate |
Truncate conversation messages |
GET |
/api/v1/webui/conversations/{conv_id}/messages/window |
Get conversation message window |
GET |
/api/v1/webui/conversations/{conv_id}/rag/config |
Get RAG config |
PATCH |
/api/v1/webui/conversations/{conv_id}/rag/config |
Update RAG config |
GET |
/api/v1/webui/conversations/{conv_id}/rag/documents |
List RAG documents |
POST |
/api/v1/webui/conversations/{conv_id}/rag/documents |
Upload RAG document |
POST |
/api/v1/webui/conversations/{conv_id}/rag/documents/batch |
Upload RAG documents batch |
DELETE |
/api/v1/webui/conversations/{conv_id}/rag/documents/{doc_id} |
Delete RAG document |
POST |
/api/v1/webui/conversations/{conv_id}/rag/ingest-file-explorer |
Ingest file explorer folder |
POST |
/api/v1/webui/conversations/{conv_id}/rag/reindex |
Reindex RAG |
POST |
/api/v1/webui/conversations/{conv_id}/rag/search |
Search RAG |
POST |
/api/v1/webui/conversations/{conv_id}/search |
Execute web search |
GET |
/api/v1/webui/conversations/{conv_id}/search/config |
Get web search config |
PATCH |
/api/v1/webui/conversations/{conv_id}/search/config |
Update web search config |
PATCH |
/api/v1/webui/conversations/{conv_id}/settings |
Update conversation model settings |
GET |
/api/v1/webui/conversations/{conv_id}/skills |
Get selection |
PUT |
/api/v1/webui/conversations/{conv_id}/skills |
Save selection |
POST |
/api/v1/webui/conversations/{conv_id}/soai-links/resolve |
Resolve SoAI links |
POST |
/api/v1/webui/conversations/{conv_id}/soai-paths/browse |
Browse SoAI path |
GET |
/api/v1/webui/conversations/{conv_id}/soai-paths/content |
Get SoAI path content |
POST |
/api/v1/webui/conversations/{conv_id}/soai-paths/download |
Download SoAI path |
POST |
/api/v1/webui/conversations/{conv_id}/soai-paths/open |
Open SoAI path |
POST |
/api/v1/webui/conversations/{conv_id}/soai-paths/preview |
Preview SoAI path |
POST |
/api/v1/webui/conversations/{conv_id}/soai-paths/read |
Read SoAI path |
POST |
/api/v1/webui/conversations/{conv_id}/soai-paths/token |
Token SoAI path |
GET |
/api/v1/webui/conversations/{conv_id}/stream-status |
Get conversation stream status |
POST |
/api/v1/webui/conversations/{conv_id}/stream/cancel |
Cancel conversation stream |
PATCH |
/api/v1/webui/conversations/{conv_id}/title |
Update conversation metadata |
GET |
/api/v1/webui/conversations/{conv_id}/workspace-path |
Get conversation workspace path config |
PATCH |
/api/v1/webui/conversations/{conv_id}/workspace-path |
Patch conversation workspace path config |
POST |
/api/v1/webui/conversations/{target_conv_id}/knowledge-attachments/use |
Use knowledge attachment items |
POST |
/api/v1/webui/knowledge-attachments/reusable |
List reusable knowledge attachments |
POST |
/api/v1/webui/licensing/activation |
Activate |
POST |
/api/v1/webui/licensing/commercial-conversion |
Convert commercial |
POST |
/api/v1/webui/licensing/deactivation |
Deactivate |
PUT |
/api/v1/webui/licensing/declaration |
Change declaration |
POST |
/api/v1/webui/licensing/deployment-reclassification |
Reclassify deployment |
GET |
/api/v1/webui/licensing/governing-documents/{flow} |
Governing documents |
POST |
/api/v1/webui/licensing/license/accept |
Accept current license |
POST |
/api/v1/webui/licensing/offline-import |
Import offline |
POST |
/api/v1/webui/licensing/offline-request |
Export offline |
POST |
/api/v1/webui/licensing/operation-reconciliation |
Reconcile operation |
POST |
/api/v1/webui/licensing/os-evaluation-conversion |
Convert OS evaluation |
POST |
/api/v1/webui/licensing/os-evaluation-reversion |
Revert OS evaluation |
GET |
/api/v1/webui/licensing/status |
Licensing status |
POST |
/api/v1/webui/licensing/term-renewal |
Retrieve term |
GET |
/api/v1/webui/mcp-access-tokens |
Handle list MCP access tokens |
POST |
/api/v1/webui/mcp-access-tokens |
Handle create MCP access token |
POST |
/api/v1/webui/mcp-access-tokens/{token_id}/revoke |
Handle revoke MCP access token |
GET |
/api/v1/webui/mcp/tool-icons |
List WebUI tool icons |
GET |
/api/v1/webui/messaging/accounts |
List messaging accounts |
POST |
/api/v1/webui/messaging/accounts |
Create messaging account |
DELETE |
/api/v1/webui/messaging/accounts/{account_id} |
Delete messaging account |
GET |
/api/v1/webui/messaging/accounts/{account_id} |
Get messaging account |
PUT |
/api/v1/webui/messaging/accounts/{account_id} |
Update messaging account |
POST |
/api/v1/webui/messaging/accounts/{account_id}/lifecycle |
Set messaging account lifecycle |
GET |
/api/v1/webui/messaging/mcp/tools |
List messaging MCP tools |
DELETE |
/api/v1/webui/notifications |
Clear notifications |
GET |
/api/v1/webui/notifications |
List notifications |
POST |
/api/v1/webui/notifications/mark-read |
Mark notifications read |
DELETE |
/api/v1/webui/notifications/{notification_id} |
Delete notification |
POST |
/api/v1/webui/notifications/{notification_id}/open |
Open notification |
GET |
/api/v1/webui/ocr/languages |
Get ocr languages |
DELETE |
/api/v1/webui/openai-api-keys |
Handle delete all OpenAI API keys |
GET |
/api/v1/webui/openai-api-keys |
Handle list OpenAI API keys |
POST |
/api/v1/webui/openai-api-keys |
Handle create OpenAI API key |
GET |
/api/v1/webui/openai-api-keys/quota/status |
Handle list OpenAI API key quota status |
DELETE |
/api/v1/webui/openai-api-keys/{key_id} |
Handle delete OpenAI API key |
DELETE |
/api/v1/webui/openai-api-keys/{key_id}/assignment |
Handle unassign user from key |
PATCH |
/api/v1/webui/openai-api-keys/{key_id}/assignment |
Handle assign user to key |
GET |
/api/v1/webui/openai-api-keys/{key_id}/quota |
Handle get OpenAI API key quota |
PATCH |
/api/v1/webui/openai-api-keys/{key_id}/quota |
Handle update OpenAI API key quota |
POST |
/api/v1/webui/openai-api-keys/{key_id}/revoke |
Handle revoke OpenAI API key |
POST |
/api/v1/webui/openai-api-keys/{key_id}/rotate |
Handle rotate OpenAI API key |
GET |
/api/v1/webui/previews/link_preview |
Link preview |
GET |
/api/v1/webui/previews/page_screenshot |
Page screenshot |
GET |
/api/v1/webui/previews/proxy |
Proxy media |
GET |
/api/v1/webui/previews/text_preview |
Text preview |
DELETE |
/api/v1/webui/prompt-history |
Clear prompt history |
GET |
/api/v1/webui/prompt-history |
List prompt history |
GET |
/api/v1/webui/prompts |
Handle list prompts |
POST |
/api/v1/webui/prompts |
Handle create prompt |
POST |
/api/v1/webui/prompts/batch-delete |
Batch delete prompts |
DELETE |
/api/v1/webui/prompts/{prompt_id} |
Handle delete prompt |
GET |
/api/v1/webui/prompts/{prompt_id} |
Handle get prompt |
PATCH |
/api/v1/webui/prompts/{prompt_id} |
Handle update prompt |
DELETE |
/api/v1/webui/sessions |
Revoke all sessions |
GET |
/api/v1/webui/sessions |
List sessions |
PATCH |
/api/v1/webui/sessions/current |
Rename current android session |
DELETE |
/api/v1/webui/sessions/{jti} |
Revoke session |
GET |
/api/v1/webui/skills |
List skills |
POST |
/api/v1/webui/skills/import |
Upload skill |
POST |
/api/v1/webui/skills/import-batch |
Upload skill batch |
GET |
/api/v1/webui/skills/import-batches/{upload_id} |
Skill import batch receipt |
GET |
/api/v1/webui/skills/imports/{upload_id} |
Skill import receipt |
DELETE |
/api/v1/webui/skills/{skill_id} |
Remove skill |
GET |
/api/v1/webui/skills/{skill_id} |
Skill details |
GET |
/api/v1/webui/skills/{skill_id}/resources |
Skill resource |
GET |
/api/v1/webui/software-update-notice |
Get update notice |
POST |
/api/v1/webui/software-update-notice/{task_id}/acknowledge |
Acknowledge update notice |
GET |
/api/v1/webui/terminal/policy |
Get terminal policy |
GET |
/api/v1/webui/users |
List all users |
POST |
/api/v1/webui/users |
Create new user |
GET |
/api/v1/webui/users/me |
Read users me |
GET |
/api/v1/webui/users/me/calendar/accounts |
List accounts |
POST |
/api/v1/webui/users/me/calendar/accounts |
Create account |
DELETE |
/api/v1/webui/users/me/calendar/accounts/{account_id} |
Delete account |
PATCH |
/api/v1/webui/users/me/calendar/accounts/{account_id} |
Update account |
POST |
/api/v1/webui/users/me/calendar/accounts/{account_id}/oauth/clear |
Clear OAuth |
POST |
/api/v1/webui/users/me/calendar/accounts/{account_id}/oauth/start |
Start OAuth |
GET |
/api/v1/webui/users/me/calendar/accounts/{account_id}/oauth/status |
Get OAuth status |
POST |
/api/v1/webui/users/me/calendar/accounts/{account_id}/sync |
Sync account |
POST |
/api/v1/webui/users/me/calendar/accounts/{account_id}/test |
Test account |
GET |
/api/v1/webui/users/me/mail/accounts |
List accounts |
POST |
/api/v1/webui/users/me/mail/accounts |
Create account |
DELETE |
/api/v1/webui/users/me/mail/accounts/{account_id} |
Delete account |
PATCH |
/api/v1/webui/users/me/mail/accounts/{account_id} |
Update account |
POST |
/api/v1/webui/users/me/mail/accounts/{account_id}/oauth/clear |
Clear OAuth |
POST |
/api/v1/webui/users/me/mail/accounts/{account_id}/oauth/start |
Start OAuth |
GET |
/api/v1/webui/users/me/mail/accounts/{account_id}/oauth/status |
Get OAuth status |
POST |
/api/v1/webui/users/me/mail/accounts/{account_id}/sync |
Sync account |
POST |
/api/v1/webui/users/me/mail/accounts/{account_id}/test |
Test account |
GET |
/api/v1/webui/users/me/memory |
Get my memory |
PUT |
/api/v1/webui/users/me/memory/chat-profile |
Update my chat memory profile |
GET |
/api/v1/webui/users/me/memory/entries |
Get my memory library |
POST |
/api/v1/webui/users/me/memory/entries |
Create my memory entry |
DELETE |
/api/v1/webui/users/me/memory/entries/{entry_id} |
Delete my memory entry |
GET |
/api/v1/webui/users/me/memory/entries/{entry_id} |
Get my memory entry |
PATCH |
/api/v1/webui/users/me/memory/entries/{entry_id} |
Update my memory entry |
DELETE |
/api/v1/webui/users/me/memory/entries/{entry_id}/observations/{observation_id} |
Delete my memory observation |
DELETE |
/api/v1/webui/users/me/memory/entries/{entry_id}/relations/{relation_id} |
Delete my memory relation |
PATCH |
/api/v1/webui/users/me/memory/entries/{entry_id}/relations/{relation_id} |
Update my memory relation |
PATCH |
/api/v1/webui/users/me/password |
Change current user password |
POST |
/api/v1/webui/users/me/password-vault/reset |
Reset my password vault |
GET |
/api/v1/webui/users/me/preferences |
Get my preferences |
PATCH |
/api/v1/webui/users/me/preferences |
Update my preferences |
POST |
/api/v1/webui/users/me/preferences/reset |
Reset my preferences |
POST |
/api/v1/webui/users/me/tool-approval-permissions/reset |
Reset my tool approval permissions |
PATCH |
/api/v1/webui/users/me/username |
Rename current username |
POST |
/api/v1/webui/users/mutations/{operation_id}/status |
User mutation status |
GET |
/api/v1/webui/users/workspace-browser/list |
List global file explorer root |
POST |
/api/v1/webui/users/workspace-browser/locate |
Locate host directory |
GET |
/api/v1/webui/users/workspace-browser/roots |
List host filesystem roots |
GET |
/api/v1/webui/users/workspace-browser/search |
Search global file explorer root |
DELETE |
/api/v1/webui/users/{user_id} |
Delete user by admin |
PATCH |
/api/v1/webui/users/{user_id} |
Update user role by admin |
PATCH |
/api/v1/webui/users/{user_id}/password |
Update user password by admin |
PATCH |
/api/v1/webui/users/{user_id}/username |
Rename username by admin |
PATCH |
/api/v1/webui/users/{user_id}/workspace-path |
Update user workspace path by admin |
DELETE |
/api/v1/webui/wallpaper |
Delete wallpaper |
GET |
/api/v1/webui/wallpaper |
Get wallpaper info |
POST |
/api/v1/webui/wallpaper/download |
Download wallpaper |
POST |
/api/v1/webui/wallpaper/upload |
Upload wallpaper |
POST |
/api/v1/webui/wizard/complete |
Complete wizard |
POST |
/api/v1/webui/wizard/license/accept |
Accept license |
POST |
/api/v1/webui/wizard/licensing/activation |
Activate |
POST |
/api/v1/webui/wizard/licensing/evaluation |
Start evaluation |
GET |
/api/v1/webui/wizard/licensing/evaluation-terms |
Evaluation terms |
GET |
/api/v1/webui/wizard/licensing/governing-documents/{flow} |
Governing documents |
POST |
/api/v1/webui/wizard/licensing/offline-import |
Import offline certificate |
POST |
/api/v1/webui/wizard/licensing/offline-request |
Export wizard offline request |
POST |
/api/v1/webui/wizard/licensing/operation-reconciliation |
Reconcile operation |
GET |
/api/v1/webui/wizard/licensing/personal-purchase-terms |
Personal purchase terms |
GET |
/api/v1/webui/wizard/status |
Wizard status |
PUT |
/api/v1/webui/wizard/use |
Set use |
These additional HTTP operations are present only when SoAI OS is the launched edition. They are unavailable in a Core installation. Use the SoAI OS WebUI pages and runbooks for host changes; several operations are destructive or depend on host capabilities.
SoAI OS host management
| Method | Endpoint | Operation |
|---|---|---|
GET |
/api/v1/os/capabilities |
Get OS capabilities |
GET |
/api/v1/os/drivers/dkms |
Get DKMS status |
POST |
/api/v1/os/drivers/install |
Install driver |
GET |
/api/v1/os/drivers/secure-boot |
Get secure boot |
GET |
/api/v1/os/drivers/status |
Get drivers status |
POST |
/api/v1/os/drivers/uninstall |
Uninstall driver |
GET |
/api/v1/os/maintenance/logs |
Get system logs |
POST |
/api/v1/os/maintenance/restart |
Schedule restart |
GET |
/api/v1/os/maintenance/services/{name} |
Get service status |
POST |
/api/v1/os/maintenance/services/{name} |
Control service |
POST |
/api/v1/os/maintenance/shutdown |
Schedule shutdown |
GET |
/api/v1/os/maintenance/status |
Get maintenance status |
GET |
/api/v1/os/maintenance/time |
Get time sync status |
GET |
/api/v1/os/network/connections |
List connections |
DELETE |
/api/v1/os/network/connections/{connection_id} |
Delete connection |
PUT |
/api/v1/os/network/connections/{connection_id} |
Modify connection |
POST |
/api/v1/os/network/connections/{connection_id}/activate |
Activate connection |
POST |
/api/v1/os/network/connections/{connection_id}/deactivate |
Deactivate connection |
GET |
/api/v1/os/network/connections/{connection_id}/profile |
Get connection profile |
GET |
/api/v1/os/network/devices |
List devices |
POST |
/api/v1/os/network/safe-apply/{task_id}/commit |
Commit safe apply |
POST |
/api/v1/os/network/safe-apply/{task_id}/rollback |
Rollback safe apply |
GET |
/api/v1/os/network/status |
Get network status |
POST |
/api/v1/os/ssh/disable |
Disable SSH |
POST |
/api/v1/os/ssh/enable |
Enable SSH |
POST |
/api/v1/os/ssh/safe-disable/{task_id}/commit |
Commit safe disable |
POST |
/api/v1/os/ssh/safe-disable/{task_id}/rollback |
Rollback safe disable |
GET |
/api/v1/os/ssh/status |
Get SSH status |
GET |
/api/v1/os/status |
Get OS status |
GET |
/api/v1/os/storage/devices |
List devices |
GET |
/api/v1/os/storage/devices/{device} |
Get device |
GET |
/api/v1/os/storage/devices/{device}/partitions |
List partitions |
POST |
/api/v1/os/storage/format-recoveries/{request_id}/release |
Release format recovery |
GET |
/api/v1/os/storage/fstab |
Get fstab entries |
POST |
/api/v1/os/storage/fstab |
Add fstab entry |
DELETE |
/api/v1/os/storage/fstab/{mount_point} |
Remove fstab entry |
POST |
/api/v1/os/storage/partitions |
Create partition |
POST |
/api/v1/os/storage/partitions/{partition}/format |
Format partition |
POST |
/api/v1/os/storage/partitions/{partition}/mount |
Mount partition |
POST |
/api/v1/os/storage/partitions/{partition}/unmount |
Unmount partition |
GET |
/api/v1/os/storage/status |
Get storage status |
GET |
/api/v1/os/updates/check |
Check updates |
GET |
/api/v1/os/updates/history |
Get update history |
POST |
/api/v1/os/updates/install |
Install updates |
GET |
/api/v1/os/updates/packages |
List installed packages |
GET |
/api/v1/os/updates/reboot-required |
Get reboot required |
GET |
/api/v1/os/updates/status |
Get updates status |
GET |
/api/v1/os/updates/upgradable-packages |
Get upgradable packages |
POST |
/api/v1/os/users/lock |
Lock user |
GET |
/api/v1/os/users/mapping |
Get user mapping |
POST |
/api/v1/os/users/ssh-keys |
Sync SSH keys |
GET |
/api/v1/os/users/status |
Get user sync status |
POST |
/api/v1/os/users/sync |
Sync user |