diff --git a/README.md b/README.md index 5b5a518..4a39952 100644 --- a/README.md +++ b/README.md @@ -147,7 +147,7 @@ See the dedicated documentation: [docs/localization.md](docs/localization.md) | Conduit App | Open‑WebUI | Notes | | --- | --- | --- | -| 1.x | 0.3.x+ | Uses OpenAPI schema at `assets/openapi.json` | +| 1.x | 0.3.x+ | OpenAPI validation removed in 1.1+ (no bundled schema) | ## Docs diff --git a/assets/openapi.json b/assets/openapi.json deleted file mode 100644 index 4eea14e..0000000 --- a/assets/openapi.json +++ /dev/null @@ -1,22618 +0,0 @@ -{ - "openapi": "3.1.0", - "info": { - "title": "Open WebUI", - "version": "0.1.0" - }, - "paths": { - "/ollama/": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Status", - "operationId": "get_status_ollama__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - }, - "head": { - "tags": [ - "ollama" - ], - "summary": "Get Status", - "operationId": "get_status_ollama__head", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/ollama/verify": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Verify Connection", - "operationId": "verify_connection_ollama_verify_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__ollama__ConnectionVerificationForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/ollama/config": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Config", - "operationId": "get_config_ollama_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/ollama/config/update": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Update Config", - "operationId": "update_config_ollama_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__ollama__OllamaConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/ollama/api/tags/{url_idx}": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Ollama Tags", - "operationId": "get_ollama_tags_ollama_api_tags__url_idx__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/tags": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Ollama Tags", - "operationId": "get_ollama_tags_ollama_api_tags_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/ps": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Ollama Loaded Models", - "description": "List models that are currently loaded into Ollama memory, and which node they are loaded on.", - "operationId": "get_ollama_loaded_models_ollama_api_ps_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/ollama/api/version/{url_idx}": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Ollama Versions", - "operationId": "get_ollama_versions_ollama_api_version__url_idx__get", - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/version": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Ollama Versions", - "operationId": "get_ollama_versions_ollama_api_version_get", - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/unload": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Unload Model", - "operationId": "unload_model_ollama_api_unload_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelNameForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/ollama/api/pull/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Pull Model", - "operationId": "pull_model_ollama_api_pull__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "type": "integer", - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelNameForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/pull": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Pull Model", - "operationId": "pull_model_ollama_api_pull_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 0, - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelNameForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/push/{url_idx}": { - "delete": { - "tags": [ - "ollama" - ], - "summary": "Push Model", - "operationId": "push_model_ollama_api_push__url_idx__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PushModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/push": { - "delete": { - "tags": [ - "ollama" - ], - "summary": "Push Model", - "operationId": "push_model_ollama_api_push_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PushModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/create/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Create Model", - "operationId": "create_model_ollama_api_create__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "type": "integer", - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/create": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Create Model", - "operationId": "create_model_ollama_api_create_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 0, - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/copy/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Copy Model", - "operationId": "copy_model_ollama_api_copy__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CopyModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/copy": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Copy Model", - "operationId": "copy_model_ollama_api_copy_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CopyModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/delete/{url_idx}": { - "delete": { - "tags": [ - "ollama" - ], - "summary": "Delete Model", - "operationId": "delete_model_ollama_api_delete__url_idx__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelNameForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/delete": { - "delete": { - "tags": [ - "ollama" - ], - "summary": "Delete Model", - "operationId": "delete_model_ollama_api_delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelNameForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/show": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Show Model Info", - "operationId": "show_model_info_ollama_api_show_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelNameForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/ollama/api/embed/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Embed", - "operationId": "embed_ollama_api_embed__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateEmbedForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/embed": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Embed", - "operationId": "embed_ollama_api_embed_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateEmbedForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/embeddings/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Embeddings", - "operationId": "embeddings_ollama_api_embeddings__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateEmbeddingsForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/embeddings": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Embeddings", - "operationId": "embeddings_ollama_api_embeddings_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateEmbeddingsForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/generate/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Completion", - "operationId": "generate_completion_ollama_api_generate__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateCompletionForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/generate": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Completion", - "operationId": "generate_completion_ollama_api_generate_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateCompletionForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/chat/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Chat Completion", - "operationId": "generate_chat_completion_ollama_api_chat__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - }, - { - "name": "bypass_filter", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "default": false, - "title": "Bypass Filter" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/api/chat": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Chat Completion", - "operationId": "generate_chat_completion_ollama_api_chat_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - }, - { - "name": "bypass_filter", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "default": false, - "title": "Bypass Filter" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/v1/completions/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Openai Completion", - "operationId": "generate_openai_completion_ollama_v1_completions__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/v1/completions": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Openai Completion", - "operationId": "generate_openai_completion_ollama_v1_completions_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/v1/chat/completions/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Openai Chat Completion", - "operationId": "generate_openai_chat_completion_ollama_v1_chat_completions__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/v1/chat/completions": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Generate Openai Chat Completion", - "operationId": "generate_openai_chat_completion_ollama_v1_chat_completions_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/v1/models/{url_idx}": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Openai Models", - "operationId": "get_openai_models_ollama_v1_models__url_idx__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/v1/models": { - "get": { - "tags": [ - "ollama" - ], - "summary": "Get Openai Models", - "operationId": "get_openai_models_ollama_v1_models_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/models/download/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Download Model", - "operationId": "download_model_ollama_models_download__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UrlForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/models/download": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Download Model", - "operationId": "download_model_ollama_models_download_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UrlForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/models/upload/{url_idx}": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Upload Model", - "operationId": "upload_model_ollama_models_upload__url_idx__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "$ref": "#/components/schemas/Body_upload_model_ollama_models_upload__url_idx__post" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/ollama/models/upload": { - "post": { - "tags": [ - "ollama" - ], - "summary": "Upload Model", - "operationId": "upload_model_ollama_models_upload_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "$ref": "#/components/schemas/Body_upload_model_ollama_models_upload_post" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/openai/config": { - "get": { - "tags": [ - "openai" - ], - "summary": "Get Config", - "operationId": "get_config_openai_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/openai/config/update": { - "post": { - "tags": [ - "openai" - ], - "summary": "Update Config", - "operationId": "update_config_openai_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__openai__OpenAIConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/openai/audio/speech": { - "post": { - "tags": [ - "openai" - ], - "summary": "Speech", - "operationId": "speech_openai_audio_speech_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/openai/models/{url_idx}": { - "get": { - "tags": [ - "openai" - ], - "summary": "Get Models", - "operationId": "get_models_openai_models__url_idx__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/openai/models": { - "get": { - "tags": [ - "openai" - ], - "summary": "Get Models", - "operationId": "get_models_openai_models_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "url_idx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Url Idx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/openai/verify": { - "post": { - "tags": [ - "openai" - ], - "summary": "Verify Connection", - "operationId": "verify_connection_openai_verify_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__openai__ConnectionVerificationForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/openai/chat/completions": { - "post": { - "tags": [ - "openai" - ], - "summary": "Generate Chat Completion", - "operationId": "generate_chat_completion_openai_chat_completions_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "bypass_filter", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "default": false, - "title": "Bypass Filter" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/openai/{path}": { - "post": { - "tags": [ - "openai" - ], - "summary": "Proxy", - "description": "Deprecated: proxy all requests to OpenAI API", - "operationId": "proxy_openai__path__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "path", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Path" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "get": { - "tags": [ - "openai" - ], - "summary": "Proxy", - "description": "Deprecated: proxy all requests to OpenAI API", - "operationId": "proxy_openai__path__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "path", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Path" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "openai" - ], - "summary": "Proxy", - "description": "Deprecated: proxy all requests to OpenAI API", - "operationId": "proxy_openai__path__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "path", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Path" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "put": { - "tags": [ - "openai" - ], - "summary": "Proxy", - "description": "Deprecated: proxy all requests to OpenAI API", - "operationId": "proxy_openai__path__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "path", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Path" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/pipelines/list": { - "get": { - "tags": [ - "pipelines" - ], - "summary": "Get Pipelines List", - "operationId": "get_pipelines_list_api_v1_pipelines_list_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/pipelines/upload": { - "post": { - "tags": [ - "pipelines" - ], - "summary": "Upload Pipeline", - "operationId": "upload_pipeline_api_v1_pipelines_upload_post", - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "$ref": "#/components/schemas/Body_upload_pipeline_api_v1_pipelines_upload_post" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/pipelines/add": { - "post": { - "tags": [ - "pipelines" - ], - "summary": "Add Pipeline", - "operationId": "add_pipeline_api_v1_pipelines_add_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddPipelineForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/pipelines/delete": { - "delete": { - "tags": [ - "pipelines" - ], - "summary": "Delete Pipeline", - "operationId": "delete_pipeline_api_v1_pipelines_delete_delete", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DeletePipelineForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/pipelines/": { - "get": { - "tags": [ - "pipelines" - ], - "summary": "Get Pipelines", - "operationId": "get_pipelines_api_v1_pipelines__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "urlIdx", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Urlidx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/pipelines/{pipeline_id}/valves": { - "get": { - "tags": [ - "pipelines" - ], - "summary": "Get Pipeline Valves", - "operationId": "get_pipeline_valves_api_v1_pipelines__pipeline_id__valves_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "pipeline_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Pipeline Id" - } - }, - { - "name": "urlIdx", - "in": "query", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Urlidx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/pipelines/{pipeline_id}/valves/spec": { - "get": { - "tags": [ - "pipelines" - ], - "summary": "Get Pipeline Valves Spec", - "operationId": "get_pipeline_valves_spec_api_v1_pipelines__pipeline_id__valves_spec_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "pipeline_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Pipeline Id" - } - }, - { - "name": "urlIdx", - "in": "query", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Urlidx" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/pipelines/{pipeline_id}/valves/update": { - "post": { - "tags": [ - "pipelines" - ], - "summary": "Update Pipeline Valves", - "operationId": "update_pipeline_valves_api_v1_pipelines__pipeline_id__valves_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "pipeline_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Pipeline Id" - } - }, - { - "name": "urlIdx", - "in": "query", - "required": true, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Urlidx" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tasks/config": { - "get": { - "tags": [ - "tasks" - ], - "summary": "Get Task Config", - "operationId": "get_task_config_api_v1_tasks_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/config/update": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Update Task Config", - "operationId": "update_task_config_api_v1_tasks_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TaskConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/title/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Title", - "operationId": "generate_title_api_v1_tasks_title_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/follow_up/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Follow Ups", - "operationId": "generate_follow_ups_api_v1_tasks_follow_up_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/tags/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Chat Tags", - "operationId": "generate_chat_tags_api_v1_tasks_tags_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/image_prompt/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Image Prompt", - "operationId": "generate_image_prompt_api_v1_tasks_image_prompt_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/queries/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Queries", - "operationId": "generate_queries_api_v1_tasks_queries_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/auto/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Autocompletion", - "operationId": "generate_autocompletion_api_v1_tasks_auto_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/emoji/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Emoji", - "operationId": "generate_emoji_api_v1_tasks_emoji_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tasks/moa/completions": { - "post": { - "tags": [ - "tasks" - ], - "summary": "Generate Moa Response", - "operationId": "generate_moa_response_api_v1_tasks_moa_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/config": { - "get": { - "tags": [ - "images" - ], - "summary": "Get Config", - "operationId": "get_config_api_v1_images_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/config/update": { - "post": { - "tags": [ - "images" - ], - "summary": "Update Config", - "operationId": "update_config_api_v1_images_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__images__ConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/config/url/verify": { - "get": { - "tags": [ - "images" - ], - "summary": "Verify Url", - "operationId": "verify_url_api_v1_images_config_url_verify_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/image/config": { - "get": { - "tags": [ - "images" - ], - "summary": "Get Image Config", - "operationId": "get_image_config_api_v1_images_image_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/image/config/update": { - "post": { - "tags": [ - "images" - ], - "summary": "Update Image Config", - "operationId": "update_image_config_api_v1_images_image_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ImageConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/models": { - "get": { - "tags": [ - "images" - ], - "summary": "Get Models", - "operationId": "get_models_api_v1_images_models_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/images/generations": { - "post": { - "tags": [ - "images" - ], - "summary": "Image Generations", - "operationId": "image_generations_api_v1_images_generations_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GenerateImageForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/audio/config": { - "get": { - "tags": [ - "audio" - ], - "summary": "Get Audio Config", - "operationId": "get_audio_config_api_v1_audio_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/audio/config/update": { - "post": { - "tags": [ - "audio" - ], - "summary": "Update Audio Config", - "operationId": "update_audio_config_api_v1_audio_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudioConfigUpdateForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/audio/speech": { - "post": { - "tags": [ - "audio" - ], - "summary": "Speech", - "operationId": "speech_api_v1_audio_speech_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/audio/transcriptions": { - "post": { - "tags": [ - "audio" - ], - "summary": "Transcription", - "operationId": "transcription_api_v1_audio_transcriptions_post", - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "$ref": "#/components/schemas/Body_transcription_api_v1_audio_transcriptions_post" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/audio/models": { - "get": { - "tags": [ - "audio" - ], - "summary": "Get Models", - "operationId": "get_models_api_v1_audio_models_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/audio/voices": { - "get": { - "tags": [ - "audio" - ], - "summary": "Get Voices", - "operationId": "get_voices_api_v1_audio_voices_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/": { - "get": { - "tags": [ - "retrieval" - ], - "summary": "Get Status", - "operationId": "get_status_api_v1_retrieval__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/api/v1/retrieval/embedding": { - "get": { - "tags": [ - "retrieval" - ], - "summary": "Get Embedding Config", - "operationId": "get_embedding_config_api_v1_retrieval_embedding_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/embedding/update": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Update Embedding Config", - "operationId": "update_embedding_config_api_v1_retrieval_embedding_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EmbeddingModelUpdateForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/config": { - "get": { - "tags": [ - "retrieval" - ], - "summary": "Get Rag Config", - "operationId": "get_rag_config_api_v1_retrieval_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/config/update": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Update Rag Config", - "operationId": "update_rag_config_api_v1_retrieval_config_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__retrieval__ConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/process/file": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Process File", - "operationId": "process_file_api_v1_retrieval_process_file_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProcessFileForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/process/text": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Process Text", - "operationId": "process_text_api_v1_retrieval_process_text_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProcessTextForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/process/youtube": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Process Youtube Video", - "operationId": "process_youtube_video_api_v1_retrieval_process_youtube_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProcessUrlForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/process/web": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Process Web", - "operationId": "process_web_api_v1_retrieval_process_web_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProcessUrlForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/process/web/search": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Process Web Search", - "operationId": "process_web_search_api_v1_retrieval_process_web_search_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/query/doc": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Query Doc Handler", - "operationId": "query_doc_handler_api_v1_retrieval_query_doc_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QueryDocForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/query/collection": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Query Collection Handler", - "operationId": "query_collection_handler_api_v1_retrieval_query_collection_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QueryCollectionsForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/delete": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Delete Entries From Collection", - "operationId": "delete_entries_from_collection_api_v1_retrieval_delete_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DeleteForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/reset/db": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Reset Vector Db", - "operationId": "reset_vector_db_api_v1_retrieval_reset_db_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/reset/uploads": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Reset Upload Dir", - "operationId": "reset_upload_dir_api_v1_retrieval_reset_uploads_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Reset Upload Dir Api V1 Retrieval Reset Uploads Post" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/retrieval/ef/{text}": { - "get": { - "tags": [ - "retrieval" - ], - "summary": "Get Embeddings", - "operationId": "get_embeddings_api_v1_retrieval_ef__text__get", - "parameters": [ - { - "name": "text", - "in": "path", - "required": true, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Text" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/retrieval/process/files/batch": { - "post": { - "tags": [ - "retrieval" - ], - "summary": "Process Files Batch", - "description": "Process a batch of files and save them to the vector database.", - "operationId": "process_files_batch_api_v1_retrieval_process_files_batch_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BatchProcessFilesForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BatchProcessFilesResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/import": { - "post": { - "tags": [ - "configs" - ], - "summary": "Import Config", - "operationId": "import_config_api_v1_configs_import_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ImportConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Response Import Config Api V1 Configs Import Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/export": { - "get": { - "tags": [ - "configs" - ], - "summary": "Export Config", - "operationId": "export_config_api_v1_configs_export_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Response Export Config Api V1 Configs Export Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/connections": { - "get": { - "tags": [ - "configs" - ], - "summary": "Get Connections Config", - "operationId": "get_connections_config_api_v1_configs_connections_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ConnectionsConfigForm" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "configs" - ], - "summary": "Set Connections Config", - "operationId": "set_connections_config_api_v1_configs_connections_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ConnectionsConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ConnectionsConfigForm" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/tool_servers": { - "get": { - "tags": [ - "configs" - ], - "summary": "Get Tool Servers Config", - "operationId": "get_tool_servers_config_api_v1_configs_tool_servers_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ToolServersConfigForm" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "configs" - ], - "summary": "Set Tool Servers Config", - "operationId": "set_tool_servers_config_api_v1_configs_tool_servers_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ToolServersConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ToolServersConfigForm" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/tool_servers/verify": { - "post": { - "tags": [ - "configs" - ], - "summary": "Verify Tool Servers Config", - "description": "Verify the connection to the tool server.", - "operationId": "verify_tool_servers_config_api_v1_configs_tool_servers_verify_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ToolServerConnection" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/code_execution": { - "get": { - "tags": [ - "configs" - ], - "summary": "Get Code Execution Config", - "operationId": "get_code_execution_config_api_v1_configs_code_execution_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CodeInterpreterConfigForm" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "configs" - ], - "summary": "Set Code Execution Config", - "operationId": "set_code_execution_config_api_v1_configs_code_execution_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CodeInterpreterConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CodeInterpreterConfigForm" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/models": { - "get": { - "tags": [ - "configs" - ], - "summary": "Get Models Config", - "operationId": "get_models_config_api_v1_configs_models_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelsConfigForm" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "configs" - ], - "summary": "Set Models Config", - "operationId": "set_models_config_api_v1_configs_models_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelsConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelsConfigForm" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/suggestions": { - "post": { - "tags": [ - "configs" - ], - "summary": "Set Default Suggestions", - "operationId": "set_default_suggestions_api_v1_configs_suggestions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SetDefaultSuggestionsForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/PromptSuggestion" - }, - "type": "array", - "title": "Response Set Default Suggestions Api V1 Configs Suggestions Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/configs/banners": { - "get": { - "tags": [ - "configs" - ], - "summary": "Get Banners", - "operationId": "get_banners_api_v1_configs_banners_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/BannerModel" - }, - "type": "array", - "title": "Response Get Banners Api V1 Configs Banners Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "configs" - ], - "summary": "Set Banners", - "operationId": "set_banners_api_v1_configs_banners_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SetBannersForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/BannerModel" - }, - "type": "array", - "title": "Response Set Banners Api V1 Configs Banners Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/": { - "get": { - "tags": [ - "auths" - ], - "summary": "Get Session User", - "operationId": "get_session_user_api_v1_auths__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SessionUserResponse" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/update/profile": { - "post": { - "tags": [ - "auths" - ], - "summary": "Update Profile", - "operationId": "update_profile_api_v1_auths_update_profile_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UpdateProfileForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__models__auths__UserResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/update/password": { - "post": { - "tags": [ - "auths" - ], - "summary": "Update Password", - "operationId": "update_password_api_v1_auths_update_password_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UpdatePasswordForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Update Password Api V1 Auths Update Password Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/ldap": { - "post": { - "tags": [ - "auths" - ], - "summary": "Ldap Auth", - "operationId": "ldap_auth_api_v1_auths_ldap_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LdapForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SessionUserResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/auths/signin": { - "post": { - "tags": [ - "auths" - ], - "summary": "Signin", - "operationId": "signin_api_v1_auths_signin_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SigninForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SessionUserResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/auths/signup": { - "post": { - "tags": [ - "auths" - ], - "summary": "Signup", - "operationId": "signup_api_v1_auths_signup_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SignupForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SessionUserResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/auths/signout": { - "get": { - "tags": [ - "auths" - ], - "summary": "Signout", - "operationId": "signout_api_v1_auths_signout_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/api/v1/auths/add": { - "post": { - "tags": [ - "auths" - ], - "summary": "Add User", - "operationId": "add_user_api_v1_auths_add_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddUserForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SigninResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/admin/details": { - "get": { - "tags": [ - "auths" - ], - "summary": "Get Admin Details", - "operationId": "get_admin_details_api_v1_auths_admin_details_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/admin/config": { - "get": { - "tags": [ - "auths" - ], - "summary": "Get Admin Config", - "operationId": "get_admin_config_api_v1_auths_admin_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "auths" - ], - "summary": "Update Admin Config", - "operationId": "update_admin_config_api_v1_auths_admin_config_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AdminConfig" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/admin/config/ldap/server": { - "get": { - "tags": [ - "auths" - ], - "summary": "Get Ldap Server", - "operationId": "get_ldap_server_api_v1_auths_admin_config_ldap_server_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LdapServerConfig" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "auths" - ], - "summary": "Update Ldap Server", - "operationId": "update_ldap_server_api_v1_auths_admin_config_ldap_server_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LdapServerConfig" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/admin/config/ldap": { - "get": { - "tags": [ - "auths" - ], - "summary": "Get Ldap Config", - "operationId": "get_ldap_config_api_v1_auths_admin_config_ldap_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "auths" - ], - "summary": "Update Ldap Config", - "operationId": "update_ldap_config_api_v1_auths_admin_config_ldap_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LdapConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/auths/api_key": { - "get": { - "tags": [ - "auths" - ], - "summary": "Get Api Key", - "operationId": "get_api_key_api_v1_auths_api_key_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ApiKey" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "auths" - ], - "summary": "Generate Api Key", - "operationId": "generate_api_key_api_v1_auths_api_key_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ApiKey" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "delete": { - "tags": [ - "auths" - ], - "summary": "Delete Api Key", - "operationId": "delete_api_key_api_v1_auths_api_key_delete", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Api Key Api V1 Auths Api Key Delete" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/active": { - "get": { - "tags": [ - "users" - ], - "summary": "Get Active Users", - "description": "Get a list of active users.", - "operationId": "get_active_users_api_v1_users_active_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/": { - "get": { - "tags": [ - "users" - ], - "summary": "Get Users", - "operationId": "get_users_api_v1_users__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "query", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Query" - } - }, - { - "name": "order_by", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Order By" - } - }, - { - "name": "direction", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Direction" - } - }, - { - "name": "page", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "default": 1, - "title": "Page" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserListResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/users/all": { - "get": { - "tags": [ - "users" - ], - "summary": "Get All Users", - "operationId": "get_all_users_api_v1_users_all_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserInfoListResponse" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/groups": { - "get": { - "tags": [ - "users" - ], - "summary": "Get User Groups", - "operationId": "get_user_groups_api_v1_users_groups_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/permissions": { - "get": { - "tags": [ - "users" - ], - "summary": "Get User Permissisions", - "operationId": "get_user_permissisions_api_v1_users_permissions_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/default/permissions": { - "get": { - "tags": [ - "users" - ], - "summary": "Get Default User Permissions", - "operationId": "get_default_user_permissions_api_v1_users_default_permissions_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserPermissions" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "users" - ], - "summary": "Update Default User Permissions", - "operationId": "update_default_user_permissions_api_v1_users_default_permissions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserPermissions" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/user/settings": { - "get": { - "tags": [ - "users" - ], - "summary": "Get User Settings By Session User", - "operationId": "get_user_settings_by_session_user_api_v1_users_user_settings_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/UserSettings" - }, - { - "type": "null" - } - ], - "title": "Response Get User Settings By Session User Api V1 Users User Settings Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/user/settings/update": { - "post": { - "tags": [ - "users" - ], - "summary": "Update User Settings By Session User", - "operationId": "update_user_settings_by_session_user_api_v1_users_user_settings_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserSettings" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserSettings" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/user/info": { - "get": { - "tags": [ - "users" - ], - "summary": "Get User Info By Session User", - "operationId": "get_user_info_by_session_user_api_v1_users_user_info_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Response Get User Info By Session User Api V1 Users User Info Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/user/info/update": { - "post": { - "tags": [ - "users" - ], - "summary": "Update User Info By Session User", - "operationId": "update_user_info_by_session_user_api_v1_users_user_info_update_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Response Update User Info By Session User Api V1 Users User Info Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/users/{user_id}": { - "get": { - "tags": [ - "users" - ], - "summary": "Get User By Id", - "operationId": "get_user_by_id_api_v1_users__user_id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "user_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "User Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__users__UserResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "users" - ], - "summary": "Delete User By Id", - "operationId": "delete_user_by_id_api_v1_users__user_id__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "user_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "User Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete User By Id Api V1 Users User Id Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/users/{user_id}/active": { - "get": { - "tags": [ - "users" - ], - "summary": "Get User Active Status By Id", - "operationId": "get_user_active_status_by_id_api_v1_users__user_id__active_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "user_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "User Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Response Get User Active Status By Id Api V1 Users User Id Active Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/users/{user_id}/update": { - "post": { - "tags": [ - "users" - ], - "summary": "Update User By Id", - "operationId": "update_user_by_id_api_v1_users__user_id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "user_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "User Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserUpdateForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/UserModel" - }, - { - "type": "null" - } - ], - "title": "Response Update User By Id Api V1 Users User Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/": { - "get": { - "tags": [ - "channels" - ], - "summary": "Get Channels", - "operationId": "get_channels_api_v1_channels__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChannelModel" - }, - "type": "array", - "title": "Response Get Channels Api V1 Channels Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/channels/list": { - "get": { - "tags": [ - "channels" - ], - "summary": "Get All Channels", - "operationId": "get_all_channels_api_v1_channels_list_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChannelModel" - }, - "type": "array", - "title": "Response Get All Channels Api V1 Channels List Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/channels/create": { - "post": { - "tags": [ - "channels" - ], - "summary": "Create New Channel", - "operationId": "create_new_channel_api_v1_channels_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChannelForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChannelModel" - }, - { - "type": "null" - } - ], - "title": "Response Create New Channel Api V1 Channels Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/channels/{id}": { - "get": { - "tags": [ - "channels" - ], - "summary": "Get Channel By Id", - "operationId": "get_channel_by_id_api_v1_channels__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChannelModel" - }, - { - "type": "null" - } - ], - "title": "Response Get Channel By Id Api V1 Channels Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/update": { - "post": { - "tags": [ - "channels" - ], - "summary": "Update Channel By Id", - "operationId": "update_channel_by_id_api_v1_channels__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChannelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChannelModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Channel By Id Api V1 Channels Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/delete": { - "delete": { - "tags": [ - "channels" - ], - "summary": "Delete Channel By Id", - "operationId": "delete_channel_by_id_api_v1_channels__id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Channel By Id Api V1 Channels Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages": { - "get": { - "tags": [ - "channels" - ], - "summary": "Get Channel Messages", - "operationId": "get_channel_messages_api_v1_channels__id__messages_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "skip", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 0, - "title": "Skip" - } - }, - { - "name": "limit", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 50, - "title": "Limit" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/MessageUserResponse" - }, - "title": "Response Get Channel Messages Api V1 Channels Id Messages Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/post": { - "post": { - "tags": [ - "channels" - ], - "summary": "Post New Message", - "operationId": "post_new_message_api_v1_channels__id__messages_post_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__models__messages__MessageForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/MessageModel" - }, - { - "type": "null" - } - ], - "title": "Response Post New Message Api V1 Channels Id Messages Post Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/{message_id}": { - "get": { - "tags": [ - "channels" - ], - "summary": "Get Channel Message", - "operationId": "get_channel_message_api_v1_channels__id__messages__message_id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/MessageUserResponse" - }, - { - "type": "null" - } - ], - "title": "Response Get Channel Message Api V1 Channels Id Messages Message Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/{message_id}/thread": { - "get": { - "tags": [ - "channels" - ], - "summary": "Get Channel Thread Messages", - "operationId": "get_channel_thread_messages_api_v1_channels__id__messages__message_id__thread_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - }, - { - "name": "skip", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 0, - "title": "Skip" - } - }, - { - "name": "limit", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 50, - "title": "Limit" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/MessageUserResponse" - }, - "title": "Response Get Channel Thread Messages Api V1 Channels Id Messages Message Id Thread Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/{message_id}/update": { - "post": { - "tags": [ - "channels" - ], - "summary": "Update Message By Id", - "operationId": "update_message_by_id_api_v1_channels__id__messages__message_id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__models__messages__MessageForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/MessageModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Message By Id Api V1 Channels Id Messages Message Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/{message_id}/reactions/add": { - "post": { - "tags": [ - "channels" - ], - "summary": "Add Reaction To Message", - "operationId": "add_reaction_to_message_api_v1_channels__id__messages__message_id__reactions_add_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReactionForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Add Reaction To Message Api V1 Channels Id Messages Message Id Reactions Add Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/{message_id}/reactions/remove": { - "post": { - "tags": [ - "channels" - ], - "summary": "Remove Reaction By Id And User Id And Name", - "operationId": "remove_reaction_by_id_and_user_id_and_name_api_v1_channels__id__messages__message_id__reactions_remove_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReactionForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Remove Reaction By Id And User Id And Name Api V1 Channels Id Messages Message Id Reactions Remove Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/channels/{id}/messages/{message_id}/delete": { - "delete": { - "tags": [ - "channels" - ], - "summary": "Delete Message By Id", - "operationId": "delete_message_by_id_api_v1_channels__id__messages__message_id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Message By Id Api V1 Channels Id Messages Message Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/list": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Session User Chat List", - "operationId": "get_session_user_chat_list_api_v1_chats_list_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "page", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Page" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "title": "Response Get Session User Chat List Api V1 Chats List Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Session User Chat List", - "operationId": "get_session_user_chat_list_api_v1_chats__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "page", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Page" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "title": "Response Get Session User Chat List Api V1 Chats Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "chats" - ], - "summary": "Delete All User Chats", - "operationId": "delete_all_user_chats_api_v1_chats__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete All User Chats Api V1 Chats Delete" - } - } - } - } - } - } - }, - "/api/v1/chats/list/user/{user_id}": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get User Chat List By User Id", - "operationId": "get_user_chat_list_by_user_id_api_v1_chats_list_user__user_id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "user_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "User Id" - } - }, - { - "name": "page", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Page" - } - }, - { - "name": "query", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Query" - } - }, - { - "name": "order_by", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Order By" - } - }, - { - "name": "direction", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Direction" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "title": "Response Get User Chat List By User Id Api V1 Chats List User User Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/new": { - "post": { - "tags": [ - "chats" - ], - "summary": "Create New Chat", - "operationId": "create_new_chat_api_v1_chats_new_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChatForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Create New Chat Api V1 Chats New Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/import": { - "post": { - "tags": [ - "chats" - ], - "summary": "Import Chat", - "operationId": "import_chat_api_v1_chats_import_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChatImportForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Import Chat Api V1 Chats Import Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/search": { - "get": { - "tags": [ - "chats" - ], - "summary": "Search User Chats", - "operationId": "search_user_chats_api_v1_chats_search_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "text", - "in": "query", - "required": true, - "schema": { - "type": "string", - "title": "Text" - } - }, - { - "name": "page", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Page" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "title": "Response Search User Chats Api V1 Chats Search Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/folder/{folder_id}": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Chats By Folder Id", - "operationId": "get_chats_by_folder_id_api_v1_chats_folder__folder_id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "folder_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Folder Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChatResponse" - }, - "title": "Response Get Chats By Folder Id Api V1 Chats Folder Folder Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/pinned": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get User Pinned Chats", - "operationId": "get_user_pinned_chats_api_v1_chats_pinned_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "type": "array", - "title": "Response Get User Pinned Chats Api V1 Chats Pinned Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/all": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get User Chats", - "operationId": "get_user_chats_api_v1_chats_all_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChatResponse" - }, - "type": "array", - "title": "Response Get User Chats Api V1 Chats All Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/all/archived": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get User Archived Chats", - "operationId": "get_user_archived_chats_api_v1_chats_all_archived_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChatResponse" - }, - "type": "array", - "title": "Response Get User Archived Chats Api V1 Chats All Archived Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/all/tags": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get All User Tags", - "operationId": "get_all_user_tags_api_v1_chats_all_tags_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/TagModel" - }, - "type": "array", - "title": "Response Get All User Tags Api V1 Chats All Tags Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/all/db": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get All User Chats In Db", - "operationId": "get_all_user_chats_in_db_api_v1_chats_all_db_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChatResponse" - }, - "type": "array", - "title": "Response Get All User Chats In Db Api V1 Chats All Db Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/archived": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Archived Session User Chat List", - "operationId": "get_archived_session_user_chat_list_api_v1_chats_archived_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "page", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Page" - } - }, - { - "name": "query", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Query" - } - }, - { - "name": "order_by", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Order By" - } - }, - { - "name": "direction", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Direction" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "title": "Response Get Archived Session User Chat List Api V1 Chats Archived Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/archive/all": { - "post": { - "tags": [ - "chats" - ], - "summary": "Archive All Chats", - "operationId": "archive_all_chats_api_v1_chats_archive_all_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Archive All Chats Api V1 Chats Archive All Post" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/share/{share_id}": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Shared Chat By Id", - "operationId": "get_shared_chat_by_id_api_v1_chats_share__share_id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "share_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Share Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Get Shared Chat By Id Api V1 Chats Share Share Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/tags": { - "post": { - "tags": [ - "chats" - ], - "summary": "Get User Chat List By Tag Name", - "operationId": "get_user_chat_list_by_tag_name_api_v1_chats_tags_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagFilterForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ChatTitleIdResponse" - }, - "type": "array", - "title": "Response Get User Chat List By Tag Name Api V1 Chats Tags Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/chats/{id}": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Chat By Id", - "operationId": "get_chat_by_id_api_v1_chats__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Get Chat By Id Api V1 Chats Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "post": { - "tags": [ - "chats" - ], - "summary": "Update Chat By Id", - "operationId": "update_chat_by_id_api_v1_chats__id__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChatForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Update Chat By Id Api V1 Chats Id Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "chats" - ], - "summary": "Delete Chat By Id", - "operationId": "delete_chat_by_id_api_v1_chats__id__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Chat By Id Api V1 Chats Id Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/messages/{message_id}": { - "post": { - "tags": [ - "chats" - ], - "summary": "Update Chat Message By Id", - "operationId": "update_chat_message_by_id_api_v1_chats__id__messages__message_id__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/open_webui__routers__chats__MessageForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Update Chat Message By Id Api V1 Chats Id Messages Message Id Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/messages/{message_id}/event": { - "post": { - "tags": [ - "chats" - ], - "summary": "Send Chat Message Event By Id", - "operationId": "send_chat_message_event_by_id_api_v1_chats__id__messages__message_id__event_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "message_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Message Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EventForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Response Send Chat Message Event By Id Api V1 Chats Id Messages Message Id Event Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/pinned": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Pinned Status By Id", - "operationId": "get_pinned_status_by_id_api_v1_chats__id__pinned_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Response Get Pinned Status By Id Api V1 Chats Id Pinned Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/pin": { - "post": { - "tags": [ - "chats" - ], - "summary": "Pin Chat By Id", - "operationId": "pin_chat_by_id_api_v1_chats__id__pin_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Pin Chat By Id Api V1 Chats Id Pin Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/clone": { - "post": { - "tags": [ - "chats" - ], - "summary": "Clone Chat By Id", - "operationId": "clone_chat_by_id_api_v1_chats__id__clone_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CloneForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Clone Chat By Id Api V1 Chats Id Clone Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/clone/shared": { - "post": { - "tags": [ - "chats" - ], - "summary": "Clone Shared Chat By Id", - "operationId": "clone_shared_chat_by_id_api_v1_chats__id__clone_shared_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Clone Shared Chat By Id Api V1 Chats Id Clone Shared Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/archive": { - "post": { - "tags": [ - "chats" - ], - "summary": "Archive Chat By Id", - "operationId": "archive_chat_by_id_api_v1_chats__id__archive_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Archive Chat By Id Api V1 Chats Id Archive Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/share": { - "post": { - "tags": [ - "chats" - ], - "summary": "Share Chat By Id", - "operationId": "share_chat_by_id_api_v1_chats__id__share_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Share Chat By Id Api V1 Chats Id Share Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "chats" - ], - "summary": "Delete Shared Chat By Id", - "operationId": "delete_shared_chat_by_id_api_v1_chats__id__share_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Response Delete Shared Chat By Id Api V1 Chats Id Share Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/folder": { - "post": { - "tags": [ - "chats" - ], - "summary": "Update Chat Folder Id By Id", - "operationId": "update_chat_folder_id_by_id_api_v1_chats__id__folder_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChatFolderIdForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ChatResponse" - }, - { - "type": "null" - } - ], - "title": "Response Update Chat Folder Id By Id Api V1 Chats Id Folder Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/tags": { - "get": { - "tags": [ - "chats" - ], - "summary": "Get Chat Tags By Id", - "operationId": "get_chat_tags_by_id_api_v1_chats__id__tags_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagModel" - }, - "title": "Response Get Chat Tags By Id Api V1 Chats Id Tags Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "post": { - "tags": [ - "chats" - ], - "summary": "Add Tag By Id And Tag Name", - "operationId": "add_tag_by_id_and_tag_name_api_v1_chats__id__tags_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagModel" - }, - "title": "Response Add Tag By Id And Tag Name Api V1 Chats Id Tags Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "chats" - ], - "summary": "Delete Tag By Id And Tag Name", - "operationId": "delete_tag_by_id_and_tag_name_api_v1_chats__id__tags_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagModel" - }, - "title": "Response Delete Tag By Id And Tag Name Api V1 Chats Id Tags Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/chats/{id}/tags/all": { - "delete": { - "tags": [ - "chats" - ], - "summary": "Delete All Tags By Id", - "operationId": "delete_all_tags_by_id_api_v1_chats__id__tags_all_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Response Delete All Tags By Id Api V1 Chats Id Tags All Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/notes/": { - "get": { - "tags": [ - "notes" - ], - "summary": "Get Notes", - "operationId": "get_notes_api_v1_notes__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/NoteUserResponse" - }, - "type": "array", - "title": "Response Get Notes Api V1 Notes Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/notes/list": { - "get": { - "tags": [ - "notes" - ], - "summary": "Get Note List", - "operationId": "get_note_list_api_v1_notes_list_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/NoteTitleIdResponse" - }, - "type": "array", - "title": "Response Get Note List Api V1 Notes List Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/notes/create": { - "post": { - "tags": [ - "notes" - ], - "summary": "Create New Note", - "operationId": "create_new_note_api_v1_notes_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NoteForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/NoteModel" - }, - { - "type": "null" - } - ], - "title": "Response Create New Note Api V1 Notes Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/notes/{id}": { - "get": { - "tags": [ - "notes" - ], - "summary": "Get Note By Id", - "operationId": "get_note_by_id_api_v1_notes__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/NoteModel" - }, - { - "type": "null" - } - ], - "title": "Response Get Note By Id Api V1 Notes Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/notes/{id}/update": { - "post": { - "tags": [ - "notes" - ], - "summary": "Update Note By Id", - "operationId": "update_note_by_id_api_v1_notes__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NoteForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/NoteModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Note By Id Api V1 Notes Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/notes/{id}/delete": { - "delete": { - "tags": [ - "notes" - ], - "summary": "Delete Note By Id", - "operationId": "delete_note_by_id_api_v1_notes__id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Note By Id Api V1 Notes Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/models/": { - "get": { - "tags": [ - "models" - ], - "summary": "Get Models", - "operationId": "get_models_api_v1_models__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "query", - "required": false, - "schema": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ModelUserResponse" - }, - "title": "Response Get Models Api V1 Models Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/models/base": { - "get": { - "tags": [ - "models" - ], - "summary": "Get Base Models", - "operationId": "get_base_models_api_v1_models_base_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ModelResponse" - }, - "type": "array", - "title": "Response Get Base Models Api V1 Models Base Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/models/create": { - "post": { - "tags": [ - "models" - ], - "summary": "Create New Model", - "operationId": "create_new_model_api_v1_models_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ModelModel" - }, - { - "type": "null" - } - ], - "title": "Response Create New Model Api V1 Models Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/models/model": { - "get": { - "tags": [ - "models" - ], - "summary": "Get Model By Id", - "operationId": "get_model_by_id_api_v1_models_model_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "query", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ModelResponse" - }, - { - "type": "null" - } - ], - "title": "Response Get Model By Id Api V1 Models Model Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/models/model/toggle": { - "post": { - "tags": [ - "models" - ], - "summary": "Toggle Model By Id", - "operationId": "toggle_model_by_id_api_v1_models_model_toggle_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "query", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ModelResponse" - }, - { - "type": "null" - } - ], - "title": "Response Toggle Model By Id Api V1 Models Model Toggle Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/models/model/update": { - "post": { - "tags": [ - "models" - ], - "summary": "Update Model By Id", - "operationId": "update_model_by_id_api_v1_models_model_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "query", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModelForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ModelModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Model By Id Api V1 Models Model Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/models/model/delete": { - "delete": { - "tags": [ - "models" - ], - "summary": "Delete Model By Id", - "operationId": "delete_model_by_id_api_v1_models_model_delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "query", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Model By Id Api V1 Models Model Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/models/delete/all": { - "delete": { - "tags": [ - "models" - ], - "summary": "Delete All Models", - "operationId": "delete_all_models_api_v1_models_delete_all_delete", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete All Models Api V1 Models Delete All Delete" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/knowledge/": { - "get": { - "tags": [ - "knowledge" - ], - "summary": "Get Knowledge", - "operationId": "get_knowledge_api_v1_knowledge__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/KnowledgeUserResponse" - }, - "type": "array", - "title": "Response Get Knowledge Api V1 Knowledge Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/knowledge/list": { - "get": { - "tags": [ - "knowledge" - ], - "summary": "Get Knowledge List", - "operationId": "get_knowledge_list_api_v1_knowledge_list_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/KnowledgeUserResponse" - }, - "type": "array", - "title": "Response Get Knowledge List Api V1 Knowledge List Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/knowledge/create": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Create New Knowledge", - "operationId": "create_new_knowledge_api_v1_knowledge_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KnowledgeForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeResponse" - }, - { - "type": "null" - } - ], - "title": "Response Create New Knowledge Api V1 Knowledge Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/knowledge/reindex": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Reindex Knowledge Files", - "operationId": "reindex_knowledge_files_api_v1_knowledge_reindex_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Reindex Knowledge Files Api V1 Knowledge Reindex Post" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/knowledge/{id}": { - "get": { - "tags": [ - "knowledge" - ], - "summary": "Get Knowledge By Id", - "operationId": "get_knowledge_by_id_api_v1_knowledge__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeFilesResponse" - }, - { - "type": "null" - } - ], - "title": "Response Get Knowledge By Id Api V1 Knowledge Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/update": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Update Knowledge By Id", - "operationId": "update_knowledge_by_id_api_v1_knowledge__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KnowledgeForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeFilesResponse" - }, - { - "type": "null" - } - ], - "title": "Response Update Knowledge By Id Api V1 Knowledge Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/file/add": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Add File To Knowledge By Id", - "operationId": "add_file_to_knowledge_by_id_api_v1_knowledge__id__file_add_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KnowledgeFileIdForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeFilesResponse" - }, - { - "type": "null" - } - ], - "title": "Response Add File To Knowledge By Id Api V1 Knowledge Id File Add Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/file/update": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Update File From Knowledge By Id", - "operationId": "update_file_from_knowledge_by_id_api_v1_knowledge__id__file_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KnowledgeFileIdForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeFilesResponse" - }, - { - "type": "null" - } - ], - "title": "Response Update File From Knowledge By Id Api V1 Knowledge Id File Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/file/remove": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Remove File From Knowledge By Id", - "operationId": "remove_file_from_knowledge_by_id_api_v1_knowledge__id__file_remove_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KnowledgeFileIdForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeFilesResponse" - }, - { - "type": "null" - } - ], - "title": "Response Remove File From Knowledge By Id Api V1 Knowledge Id File Remove Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/delete": { - "delete": { - "tags": [ - "knowledge" - ], - "summary": "Delete Knowledge By Id", - "operationId": "delete_knowledge_by_id_api_v1_knowledge__id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Knowledge By Id Api V1 Knowledge Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/reset": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Reset Knowledge By Id", - "operationId": "reset_knowledge_by_id_api_v1_knowledge__id__reset_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeResponse" - }, - { - "type": "null" - } - ], - "title": "Response Reset Knowledge By Id Api V1 Knowledge Id Reset Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/knowledge/{id}/files/batch/add": { - "post": { - "tags": [ - "knowledge" - ], - "summary": "Add Files To Knowledge Batch", - "description": "Add multiple files to a knowledge base", - "operationId": "add_files_to_knowledge_batch_api_v1_knowledge__id__files_batch_add_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/KnowledgeFileIdForm" - }, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/KnowledgeFilesResponse" - }, - { - "type": "null" - } - ], - "title": "Response Add Files To Knowledge Batch Api V1 Knowledge Id Files Batch Add Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/prompts/": { - "get": { - "tags": [ - "prompts" - ], - "summary": "Get Prompts", - "operationId": "get_prompts_api_v1_prompts__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/PromptModel" - }, - "type": "array", - "title": "Response Get Prompts Api V1 Prompts Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/prompts/list": { - "get": { - "tags": [ - "prompts" - ], - "summary": "Get Prompt List", - "operationId": "get_prompt_list_api_v1_prompts_list_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/PromptUserResponse" - }, - "type": "array", - "title": "Response Get Prompt List Api V1 Prompts List Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/prompts/create": { - "post": { - "tags": [ - "prompts" - ], - "summary": "Create New Prompt", - "operationId": "create_new_prompt_api_v1_prompts_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromptForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/PromptModel" - }, - { - "type": "null" - } - ], - "title": "Response Create New Prompt Api V1 Prompts Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/prompts/command/{command}": { - "get": { - "tags": [ - "prompts" - ], - "summary": "Get Prompt By Command", - "operationId": "get_prompt_by_command_api_v1_prompts_command__command__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "command", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Command" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/PromptModel" - }, - { - "type": "null" - } - ], - "title": "Response Get Prompt By Command Api V1 Prompts Command Command Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/prompts/command/{command}/update": { - "post": { - "tags": [ - "prompts" - ], - "summary": "Update Prompt By Command", - "operationId": "update_prompt_by_command_api_v1_prompts_command__command__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "command", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Command" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromptForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/PromptModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Prompt By Command Api V1 Prompts Command Command Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/prompts/command/{command}/delete": { - "delete": { - "tags": [ - "prompts" - ], - "summary": "Delete Prompt By Command", - "operationId": "delete_prompt_by_command_api_v1_prompts_command__command__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "command", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Command" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Prompt By Command Api V1 Prompts Command Command Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tools", - "operationId": "get_tools_api_v1_tools__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ToolUserResponse" - }, - "type": "array", - "title": "Response Get Tools Api V1 Tools Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tools/list": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tool List", - "operationId": "get_tool_list_api_v1_tools_list_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ToolUserResponse" - }, - "type": "array", - "title": "Response Get Tool List Api V1 Tools List Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tools/load/url": { - "post": { - "tags": [ - "tools" - ], - "summary": "Load Tool From Url", - "operationId": "load_tool_from_url_api_v1_tools_load_url_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LoadUrlForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Response Load Tool From Url Api V1 Tools Load Url Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tools/export": { - "get": { - "tags": [ - "tools" - ], - "summary": "Export Tools", - "operationId": "export_tools_api_v1_tools_export_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/ToolModel" - }, - "type": "array", - "title": "Response Export Tools Api V1 Tools Export Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tools/create": { - "post": { - "tags": [ - "tools" - ], - "summary": "Create New Tools", - "operationId": "create_new_tools_api_v1_tools_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ToolForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ToolResponse" - }, - { - "type": "null" - } - ], - "title": "Response Create New Tools Api V1 Tools Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/tools/id/{id}": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tools By Id", - "operationId": "get_tools_by_id_api_v1_tools_id__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ToolModel" - }, - { - "type": "null" - } - ], - "title": "Response Get Tools By Id Api V1 Tools Id Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/update": { - "post": { - "tags": [ - "tools" - ], - "summary": "Update Tools By Id", - "operationId": "update_tools_by_id_api_v1_tools_id__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ToolForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/ToolModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Tools By Id Api V1 Tools Id Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/delete": { - "delete": { - "tags": [ - "tools" - ], - "summary": "Delete Tools By Id", - "operationId": "delete_tools_by_id_api_v1_tools_id__id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Tools By Id Api V1 Tools Id Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/valves": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tools Valves By Id", - "operationId": "get_tools_valves_by_id_api_v1_tools_id__id__valves_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Tools Valves By Id Api V1 Tools Id Id Valves Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/valves/spec": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tools Valves Spec By Id", - "operationId": "get_tools_valves_spec_by_id_api_v1_tools_id__id__valves_spec_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Tools Valves Spec By Id Api V1 Tools Id Id Valves Spec Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/valves/update": { - "post": { - "tags": [ - "tools" - ], - "summary": "Update Tools Valves By Id", - "operationId": "update_tools_valves_by_id_api_v1_tools_id__id__valves_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Update Tools Valves By Id Api V1 Tools Id Id Valves Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/valves/user": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tools User Valves By Id", - "operationId": "get_tools_user_valves_by_id_api_v1_tools_id__id__valves_user_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Tools User Valves By Id Api V1 Tools Id Id Valves User Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/valves/user/spec": { - "get": { - "tags": [ - "tools" - ], - "summary": "Get Tools User Valves Spec By Id", - "operationId": "get_tools_user_valves_spec_by_id_api_v1_tools_id__id__valves_user_spec_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Tools User Valves Spec By Id Api V1 Tools Id Id Valves User Spec Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/tools/id/{id}/valves/user/update": { - "post": { - "tags": [ - "tools" - ], - "summary": "Update Tools User Valves By Id", - "operationId": "update_tools_user_valves_by_id_api_v1_tools_id__id__valves_user_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Update Tools User Valves By Id Api V1 Tools Id Id Valves User Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/memories/ef": { - "get": { - "tags": [ - "memories" - ], - "summary": "Get Embeddings", - "operationId": "get_embeddings_api_v1_memories_ef_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/api/v1/memories/": { - "get": { - "tags": [ - "memories" - ], - "summary": "Get Memories", - "operationId": "get_memories_api_v1_memories__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/MemoryModel" - }, - "type": "array", - "title": "Response Get Memories Api V1 Memories Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/memories/add": { - "post": { - "tags": [ - "memories" - ], - "summary": "Add Memory", - "operationId": "add_memory_api_v1_memories_add_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddMemoryForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/MemoryModel" - }, - { - "type": "null" - } - ], - "title": "Response Add Memory Api V1 Memories Add Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/memories/query": { - "post": { - "tags": [ - "memories" - ], - "summary": "Query Memory", - "operationId": "query_memory_api_v1_memories_query_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QueryMemoryForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/memories/reset": { - "post": { - "tags": [ - "memories" - ], - "summary": "Reset Memory From Vector Db", - "operationId": "reset_memory_from_vector_db_api_v1_memories_reset_post", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Reset Memory From Vector Db Api V1 Memories Reset Post" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/memories/delete/user": { - "delete": { - "tags": [ - "memories" - ], - "summary": "Delete Memory By User Id", - "operationId": "delete_memory_by_user_id_api_v1_memories_delete_user_delete", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Memory By User Id Api V1 Memories Delete User Delete" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/memories/{memory_id}/update": { - "post": { - "tags": [ - "memories" - ], - "summary": "Update Memory By Id", - "operationId": "update_memory_by_id_api_v1_memories__memory_id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "memory_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Memory Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/MemoryUpdateModel" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/MemoryModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Memory By Id Api V1 Memories Memory Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/memories/{memory_id}": { - "delete": { - "tags": [ - "memories" - ], - "summary": "Delete Memory By Id", - "operationId": "delete_memory_by_id_api_v1_memories__memory_id__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "memory_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Memory Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Memory By Id Api V1 Memories Memory Id Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/folders/": { - "get": { - "tags": [ - "folders" - ], - "summary": "Get Folders", - "operationId": "get_folders_api_v1_folders__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/FolderModel" - }, - "type": "array", - "title": "Response Get Folders Api V1 Folders Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "folders" - ], - "summary": "Create Folder", - "operationId": "create_folder_api_v1_folders__post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FolderForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/folders/{id}": { - "get": { - "tags": [ - "folders" - ], - "summary": "Get Folder By Id", - "operationId": "get_folder_by_id_api_v1_folders__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FolderModel" - }, - { - "type": "null" - } - ], - "title": "Response Get Folder By Id Api V1 Folders Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "folders" - ], - "summary": "Delete Folder By Id", - "operationId": "delete_folder_by_id_api_v1_folders__id__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/folders/{id}/update": { - "post": { - "tags": [ - "folders" - ], - "summary": "Update Folder Name By Id", - "operationId": "update_folder_name_by_id_api_v1_folders__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FolderForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/folders/{id}/update/parent": { - "post": { - "tags": [ - "folders" - ], - "summary": "Update Folder Parent Id By Id", - "operationId": "update_folder_parent_id_by_id_api_v1_folders__id__update_parent_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FolderParentIdForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/folders/{id}/update/expanded": { - "post": { - "tags": [ - "folders" - ], - "summary": "Update Folder Is Expanded By Id", - "operationId": "update_folder_is_expanded_by_id_api_v1_folders__id__update_expanded_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FolderIsExpandedForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/groups/": { - "get": { - "tags": [ - "groups" - ], - "summary": "Get Groups", - "operationId": "get_groups_api_v1_groups__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/GroupResponse" - }, - "type": "array", - "title": "Response Get Groups Api V1 Groups Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/groups/create": { - "post": { - "tags": [ - "groups" - ], - "summary": "Create New Group", - "operationId": "create_new_group_api_v1_groups_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GroupForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/GroupResponse" - }, - { - "type": "null" - } - ], - "title": "Response Create New Group Api V1 Groups Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/groups/id/{id}": { - "get": { - "tags": [ - "groups" - ], - "summary": "Get Group By Id", - "operationId": "get_group_by_id_api_v1_groups_id__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/GroupResponse" - }, - { - "type": "null" - } - ], - "title": "Response Get Group By Id Api V1 Groups Id Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/groups/id/{id}/update": { - "post": { - "tags": [ - "groups" - ], - "summary": "Update Group By Id", - "operationId": "update_group_by_id_api_v1_groups_id__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GroupUpdateForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/GroupResponse" - }, - { - "type": "null" - } - ], - "title": "Response Update Group By Id Api V1 Groups Id Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/groups/id/{id}/users/add": { - "post": { - "tags": [ - "groups" - ], - "summary": "Add User To Group", - "operationId": "add_user_to_group_api_v1_groups_id__id__users_add_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserIdsForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/GroupResponse" - }, - { - "type": "null" - } - ], - "title": "Response Add User To Group Api V1 Groups Id Id Users Add Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/groups/id/{id}/users/remove": { - "post": { - "tags": [ - "groups" - ], - "summary": "Remove Users From Group", - "operationId": "remove_users_from_group_api_v1_groups_id__id__users_remove_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserIdsForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/GroupResponse" - }, - { - "type": "null" - } - ], - "title": "Response Remove Users From Group Api V1 Groups Id Id Users Remove Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/groups/id/{id}/delete": { - "delete": { - "tags": [ - "groups" - ], - "summary": "Delete Group By Id", - "operationId": "delete_group_by_id_api_v1_groups_id__id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Group By Id Api V1 Groups Id Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/": { - "post": { - "tags": [ - "files" - ], - "summary": "Upload File", - "operationId": "upload_file_api_v1_files__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "process", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true, - "title": "Process" - } - }, - { - "name": "internal", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false, - "title": "Internal" - } - } - ], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "$ref": "#/components/schemas/Body_upload_file_api_v1_files__post" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FileModelResponse" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "get": { - "tags": [ - "files" - ], - "summary": "List Files", - "operationId": "list_files_api_v1_files__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "content", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true, - "title": "Content" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FileModelResponse" - }, - "title": "Response List Files Api V1 Files Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/search": { - "get": { - "tags": [ - "files" - ], - "summary": "Search Files", - "description": "Search for files by filename with support for wildcard patterns.", - "operationId": "search_files_api_v1_files_search_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "filename", - "in": "query", - "required": true, - "schema": { - "type": "string", - "description": "Filename pattern to search for. Supports wildcards such as '*.txt'", - "title": "Filename" - }, - "description": "Filename pattern to search for. Supports wildcards such as '*.txt'" - }, - { - "name": "content", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true, - "title": "Content" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FileModelResponse" - }, - "title": "Response Search Files Api V1 Files Search Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/all": { - "delete": { - "tags": [ - "files" - ], - "summary": "Delete All Files", - "operationId": "delete_all_files_api_v1_files_all_delete", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/files/{id}": { - "get": { - "tags": [ - "files" - ], - "summary": "Get File By Id", - "operationId": "get_file_by_id_api_v1_files__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FileModel" - }, - { - "type": "null" - } - ], - "title": "Response Get File By Id Api V1 Files Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "files" - ], - "summary": "Delete File By Id", - "operationId": "delete_file_by_id_api_v1_files__id__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/{id}/data/content": { - "get": { - "tags": [ - "files" - ], - "summary": "Get File Data Content By Id", - "operationId": "get_file_data_content_by_id_api_v1_files__id__data_content_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/{id}/data/content/update": { - "post": { - "tags": [ - "files" - ], - "summary": "Update File Data Content By Id", - "operationId": "update_file_data_content_by_id_api_v1_files__id__data_content_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ContentForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/{id}/content": { - "get": { - "tags": [ - "files" - ], - "summary": "Get File Content By Id", - "operationId": "get_file_content_by_id_api_v1_files__id__content_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - }, - { - "name": "attachment", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false, - "title": "Attachment" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/{id}/content/html": { - "get": { - "tags": [ - "files" - ], - "summary": "Get Html File Content By Id", - "operationId": "get_html_file_content_by_id_api_v1_files__id__content_html_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/files/{id}/content/{file_name}": { - "get": { - "tags": [ - "files" - ], - "summary": "Get File Content By Id", - "operationId": "get_file_content_by_id_api_v1_files__id__content__file_name__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Functions", - "operationId": "get_functions_api_v1_functions__get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/FunctionResponse" - }, - "type": "array", - "title": "Response Get Functions Api V1 Functions Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/functions/export": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Functions", - "operationId": "get_functions_api_v1_functions_export_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/FunctionModel" - }, - "type": "array", - "title": "Response Get Functions Api V1 Functions Export Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/functions/load/url": { - "post": { - "tags": [ - "functions" - ], - "summary": "Load Function From Url", - "operationId": "load_function_from_url_api_v1_functions_load_url_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LoadUrlForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Response Load Function From Url Api V1 Functions Load Url Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/functions/sync": { - "post": { - "tags": [ - "functions" - ], - "summary": "Sync Functions", - "operationId": "sync_functions_api_v1_functions_sync_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SyncFunctionsForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FunctionModel" - }, - { - "type": "null" - } - ], - "title": "Response Sync Functions Api V1 Functions Sync Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/functions/create": { - "post": { - "tags": [ - "functions" - ], - "summary": "Create New Function", - "operationId": "create_new_function_api_v1_functions_create_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FunctionForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FunctionResponse" - }, - { - "type": "null" - } - ], - "title": "Response Create New Function Api V1 Functions Create Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/functions/id/{id}": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Function By Id", - "operationId": "get_function_by_id_api_v1_functions_id__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FunctionModel" - }, - { - "type": "null" - } - ], - "title": "Response Get Function By Id Api V1 Functions Id Id Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/toggle": { - "post": { - "tags": [ - "functions" - ], - "summary": "Toggle Function By Id", - "operationId": "toggle_function_by_id_api_v1_functions_id__id__toggle_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FunctionModel" - }, - { - "type": "null" - } - ], - "title": "Response Toggle Function By Id Api V1 Functions Id Id Toggle Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/toggle/global": { - "post": { - "tags": [ - "functions" - ], - "summary": "Toggle Global By Id", - "operationId": "toggle_global_by_id_api_v1_functions_id__id__toggle_global_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FunctionModel" - }, - { - "type": "null" - } - ], - "title": "Response Toggle Global By Id Api V1 Functions Id Id Toggle Global Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/update": { - "post": { - "tags": [ - "functions" - ], - "summary": "Update Function By Id", - "operationId": "update_function_by_id_api_v1_functions_id__id__update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FunctionForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/FunctionModel" - }, - { - "type": "null" - } - ], - "title": "Response Update Function By Id Api V1 Functions Id Id Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/delete": { - "delete": { - "tags": [ - "functions" - ], - "summary": "Delete Function By Id", - "operationId": "delete_function_by_id_api_v1_functions_id__id__delete_delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Function By Id Api V1 Functions Id Id Delete Delete" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/valves": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Function Valves By Id", - "operationId": "get_function_valves_by_id_api_v1_functions_id__id__valves_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Function Valves By Id Api V1 Functions Id Id Valves Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/valves/spec": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Function Valves Spec By Id", - "operationId": "get_function_valves_spec_by_id_api_v1_functions_id__id__valves_spec_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Function Valves Spec By Id Api V1 Functions Id Id Valves Spec Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/valves/update": { - "post": { - "tags": [ - "functions" - ], - "summary": "Update Function Valves By Id", - "operationId": "update_function_valves_by_id_api_v1_functions_id__id__valves_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Update Function Valves By Id Api V1 Functions Id Id Valves Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/valves/user": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Function User Valves By Id", - "operationId": "get_function_user_valves_by_id_api_v1_functions_id__id__valves_user_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Function User Valves By Id Api V1 Functions Id Id Valves User Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/valves/user/spec": { - "get": { - "tags": [ - "functions" - ], - "summary": "Get Function User Valves Spec By Id", - "operationId": "get_function_user_valves_spec_by_id_api_v1_functions_id__id__valves_user_spec_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Get Function User Valves Spec By Id Api V1 Functions Id Id Valves User Spec Get" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/functions/id/{id}/valves/user/update": { - "post": { - "tags": [ - "functions" - ], - "summary": "Update Function User Valves By Id", - "operationId": "update_function_user_valves_by_id_api_v1_functions_id__id__valves_user_update_post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "anyOf": [ - { - "type": "object", - "additionalProperties": true - }, - { - "type": "null" - } - ], - "title": "Response Update Function User Valves By Id Api V1 Functions Id Id Valves User Update Post" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/evaluations/config": { - "get": { - "tags": [ - "evaluations" - ], - "summary": "Get Config", - "operationId": "get_config_api_v1_evaluations_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "tags": [ - "evaluations" - ], - "summary": "Update Config", - "operationId": "update_config_api_v1_evaluations_config_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UpdateConfigForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/evaluations/feedbacks/all": { - "get": { - "tags": [ - "evaluations" - ], - "summary": "Get All Feedbacks", - "operationId": "get_all_feedbacks_api_v1_evaluations_feedbacks_all_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/FeedbackUserResponse" - }, - "type": "array", - "title": "Response Get All Feedbacks Api V1 Evaluations Feedbacks All Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "delete": { - "tags": [ - "evaluations" - ], - "summary": "Delete All Feedbacks", - "operationId": "delete_all_feedbacks_api_v1_evaluations_feedbacks_all_delete", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/evaluations/feedbacks/all/export": { - "get": { - "tags": [ - "evaluations" - ], - "summary": "Get All Feedbacks", - "operationId": "get_all_feedbacks_api_v1_evaluations_feedbacks_all_export_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/FeedbackModel" - }, - "type": "array", - "title": "Response Get All Feedbacks Api V1 Evaluations Feedbacks All Export Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/evaluations/feedbacks/user": { - "get": { - "tags": [ - "evaluations" - ], - "summary": "Get Feedbacks", - "operationId": "get_feedbacks_api_v1_evaluations_feedbacks_user_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/FeedbackUserResponse" - }, - "type": "array", - "title": "Response Get Feedbacks Api V1 Evaluations Feedbacks User Get" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/evaluations/feedbacks": { - "delete": { - "tags": [ - "evaluations" - ], - "summary": "Delete Feedbacks", - "operationId": "delete_feedbacks_api_v1_evaluations_feedbacks_delete", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "boolean", - "title": "Response Delete Feedbacks Api V1 Evaluations Feedbacks Delete" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/evaluations/feedback": { - "post": { - "tags": [ - "evaluations" - ], - "summary": "Create Feedback", - "operationId": "create_feedback_api_v1_evaluations_feedback_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FeedbackForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FeedbackModel" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/evaluations/feedback/{id}": { - "get": { - "tags": [ - "evaluations" - ], - "summary": "Get Feedback By Id", - "operationId": "get_feedback_by_id_api_v1_evaluations_feedback__id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FeedbackModel" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "post": { - "tags": [ - "evaluations" - ], - "summary": "Update Feedback By Id", - "operationId": "update_feedback_by_id_api_v1_evaluations_feedback__id__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FeedbackForm" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FeedbackModel" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - }, - "delete": { - "tags": [ - "evaluations" - ], - "summary": "Delete Feedback By Id", - "operationId": "delete_feedback_by_id_api_v1_evaluations_feedback__id__delete", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/utils/gravatar": { - "get": { - "tags": [ - "utils" - ], - "summary": "Get Gravatar", - "operationId": "get_gravatar_api_v1_utils_gravatar_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "email", - "in": "query", - "required": true, - "schema": { - "type": "string", - "title": "Email" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/v1/utils/code/format": { - "post": { - "tags": [ - "utils" - ], - "summary": "Format Code", - "operationId": "format_code_api_v1_utils_code_format_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CodeForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/utils/code/execute": { - "post": { - "tags": [ - "utils" - ], - "summary": "Execute Code", - "operationId": "execute_code_api_v1_utils_code_execute_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CodeForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/utils/markdown": { - "post": { - "tags": [ - "utils" - ], - "summary": "Get Html From Markdown", - "operationId": "get_html_from_markdown_api_v1_utils_markdown_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/MarkdownForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/utils/pdf": { - "post": { - "tags": [ - "utils" - ], - "summary": "Download Chat As Pdf", - "operationId": "download_chat_as_pdf_api_v1_utils_pdf_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChatTitleMessagesForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/utils/db/download": { - "get": { - "tags": [ - "utils" - ], - "summary": "Download Db", - "operationId": "download_db_api_v1_utils_db_download_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/v1/utils/litellm/config": { - "get": { - "tags": [ - "utils" - ], - "summary": "Download Litellm Config Yaml", - "operationId": "download_litellm_config_yaml_api_v1_utils_litellm_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/models": { - "get": { - "summary": "Get Models", - "operationId": "get_models_api_models_get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "refresh", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false, - "title": "Refresh" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/models/base": { - "get": { - "summary": "Get Base Models", - "operationId": "get_base_models_api_models_base_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/embeddings": { - "post": { - "summary": "Embeddings", - "description": "OpenAI-compatible embeddings endpoint.\n\nThis handler:\n - Performs user/model checks and dispatches to the correct backend.\n - Supports OpenAI, Ollama, arena models, pipelines, and any compatible provider.\n\nArgs:\n request (Request): Request context.\n form_data (dict): OpenAI-like payload (e.g., {\"model\": \"...\", \"input\": [...]})\n user (UserModel): Authenticated user.\n\nReturns:\n dict: OpenAI-compatible embeddings response.", - "operationId": "embeddings_api_embeddings_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/chat/completions": { - "post": { - "summary": "Chat Completion", - "operationId": "chat_completion_api_chat_completions_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/chat/completed": { - "post": { - "summary": "Chat Completed", - "operationId": "chat_completed_api_chat_completed_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object", - "title": "Form Data" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/chat/actions/{action_id}": { - "post": { - "summary": "Chat Action", - "operationId": "chat_action_api_chat_actions__action_id__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "action_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Action Id" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "additionalProperties": true, - "title": "Form Data" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/tasks/stop/{task_id}": { - "post": { - "summary": "Stop Task Endpoint", - "operationId": "stop_task_endpoint_api_tasks_stop__task_id__post", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "task_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Task Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/tasks": { - "get": { - "summary": "List Tasks Endpoint", - "operationId": "list_tasks_endpoint_api_tasks_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/tasks/chat/{chat_id}": { - "get": { - "summary": "List Tasks By Chat Id Endpoint", - "operationId": "list_tasks_by_chat_id_endpoint_api_tasks_chat__chat_id__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "chat_id", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Chat Id" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/api/config": { - "get": { - "summary": "Get App Config", - "operationId": "get_app_config_api_config_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/api/webhook": { - "get": { - "summary": "Get Webhook Url", - "operationId": "get_webhook_url_api_webhook_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - }, - "post": { - "summary": "Update Webhook Url", - "operationId": "update_webhook_url_api_webhook_post", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UrlForm" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/version": { - "get": { - "summary": "Get App Version", - "operationId": "get_app_version_api_version_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/api/version/updates": { - "get": { - "summary": "Get App Latest Release Version", - "operationId": "get_app_latest_release_version_api_version_updates_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/api/changelog": { - "get": { - "summary": "Get App Changelog", - "operationId": "get_app_changelog_api_changelog_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/api/usage": { - "get": { - "summary": "Get Current Usage", - "description": "Get current usage statistics for Open WebUI.\nThis is an experimental endpoint and subject to change.", - "operationId": "get_current_usage_api_usage_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - }, - "security": [ - { - "HTTPBearer": [] - } - ] - } - }, - "/oauth/{provider}/login": { - "get": { - "summary": "Oauth Login", - "operationId": "oauth_login_oauth__provider__login_get", - "parameters": [ - { - "name": "provider", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Provider" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/oauth/{provider}/callback": { - "get": { - "summary": "Oauth Callback", - "operationId": "oauth_callback_oauth__provider__callback_get", - "parameters": [ - { - "name": "provider", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Provider" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - }, - "/manifest.json": { - "get": { - "summary": "Get Manifest Json", - "operationId": "get_manifest_json_manifest_json_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/opensearch.xml": { - "get": { - "summary": "Get Opensearch Xml", - "operationId": "get_opensearch_xml_opensearch_xml_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/health": { - "get": { - "summary": "Healthcheck", - "operationId": "healthcheck_health_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/health/db": { - "get": { - "summary": "Healthcheck With Db", - "operationId": "healthcheck_with_db_health_db_get", - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - } - } - } - }, - "/cache/{path}": { - "get": { - "summary": "Serve Cache File", - "operationId": "serve_cache_file_cache__path__get", - "security": [ - { - "HTTPBearer": [] - } - ], - "parameters": [ - { - "name": "path", - "in": "path", - "required": true, - "schema": { - "type": "string", - "title": "Path" - } - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": {} - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/HTTPValidationError" - } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "AddMemoryForm": { - "properties": { - "content": { - "type": "string", - "title": "Content" - } - }, - "type": "object", - "required": [ - "content" - ], - "title": "AddMemoryForm" - }, - "AddPipelineForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "urlIdx": { - "type": "integer", - "title": "Urlidx" - } - }, - "type": "object", - "required": [ - "url", - "urlIdx" - ], - "title": "AddPipelineForm" - }, - "AddUserForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "password": { - "type": "string", - "title": "Password" - }, - "profile_image_url": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Profile Image Url", - "default": "/user.png" - }, - "role": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Role", - "default": "pending" - } - }, - "type": "object", - "required": [ - "name", - "email", - "password" - ], - "title": "AddUserForm" - }, - "AdminConfig": { - "properties": { - "SHOW_ADMIN_DETAILS": { - "type": "boolean", - "title": "Show Admin Details" - }, - "WEBUI_URL": { - "type": "string", - "title": "Webui Url" - }, - "ENABLE_SIGNUP": { - "type": "boolean", - "title": "Enable Signup" - }, - "ENABLE_API_KEY": { - "type": "boolean", - "title": "Enable Api Key" - }, - "ENABLE_API_KEY_ENDPOINT_RESTRICTIONS": { - "type": "boolean", - "title": "Enable Api Key Endpoint Restrictions" - }, - "API_KEY_ALLOWED_ENDPOINTS": { - "type": "string", - "title": "Api Key Allowed Endpoints" - }, - "DEFAULT_USER_ROLE": { - "type": "string", - "title": "Default User Role" - }, - "JWT_EXPIRES_IN": { - "type": "string", - "title": "Jwt Expires In" - }, - "ENABLE_COMMUNITY_SHARING": { - "type": "boolean", - "title": "Enable Community Sharing" - }, - "ENABLE_MESSAGE_RATING": { - "type": "boolean", - "title": "Enable Message Rating" - }, - "ENABLE_CHANNELS": { - "type": "boolean", - "title": "Enable Channels" - }, - "ENABLE_NOTES": { - "type": "boolean", - "title": "Enable Notes" - }, - "ENABLE_USER_WEBHOOKS": { - "type": "boolean", - "title": "Enable User Webhooks" - }, - "PENDING_USER_OVERLAY_TITLE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Pending User Overlay Title" - }, - "PENDING_USER_OVERLAY_CONTENT": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Pending User Overlay Content" - }, - "RESPONSE_WATERMARK": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Response Watermark" - } - }, - "type": "object", - "required": [ - "SHOW_ADMIN_DETAILS", - "WEBUI_URL", - "ENABLE_SIGNUP", - "ENABLE_API_KEY", - "ENABLE_API_KEY_ENDPOINT_RESTRICTIONS", - "API_KEY_ALLOWED_ENDPOINTS", - "DEFAULT_USER_ROLE", - "JWT_EXPIRES_IN", - "ENABLE_COMMUNITY_SHARING", - "ENABLE_MESSAGE_RATING", - "ENABLE_CHANNELS", - "ENABLE_NOTES", - "ENABLE_USER_WEBHOOKS" - ], - "title": "AdminConfig" - }, - "ApiKey": { - "properties": { - "api_key": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Api Key" - } - }, - "type": "object", - "title": "ApiKey" - }, - "AudioConfigUpdateForm": { - "properties": { - "tts": { - "$ref": "#/components/schemas/TTSConfigForm" - }, - "stt": { - "$ref": "#/components/schemas/STTConfigForm" - } - }, - "type": "object", - "required": [ - "tts", - "stt" - ], - "title": "AudioConfigUpdateForm" - }, - "Automatic1111ConfigForm": { - "properties": { - "AUTOMATIC1111_BASE_URL": { - "type": "string", - "title": "Automatic1111 Base Url" - }, - "AUTOMATIC1111_API_AUTH": { - "type": "string", - "title": "Automatic1111 Api Auth" - }, - "AUTOMATIC1111_CFG_SCALE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Automatic1111 Cfg Scale" - }, - "AUTOMATIC1111_SAMPLER": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Automatic1111 Sampler" - }, - "AUTOMATIC1111_SCHEDULER": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Automatic1111 Scheduler" - } - }, - "type": "object", - "required": [ - "AUTOMATIC1111_BASE_URL", - "AUTOMATIC1111_API_AUTH", - "AUTOMATIC1111_CFG_SCALE", - "AUTOMATIC1111_SAMPLER", - "AUTOMATIC1111_SCHEDULER" - ], - "title": "Automatic1111ConfigForm" - }, - "AzureOpenAIConfigForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "key": { - "type": "string", - "title": "Key" - }, - "version": { - "type": "string", - "title": "Version" - } - }, - "type": "object", - "required": [ - "url", - "key", - "version" - ], - "title": "AzureOpenAIConfigForm" - }, - "BannerModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "type": { - "type": "string", - "title": "Type" - }, - "title": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Title" - }, - "content": { - "type": "string", - "title": "Content" - }, - "dismissible": { - "type": "boolean", - "title": "Dismissible" - }, - "timestamp": { - "type": "integer", - "title": "Timestamp" - } - }, - "type": "object", - "required": [ - "id", - "type", - "content", - "dismissible", - "timestamp" - ], - "title": "BannerModel" - }, - "BatchProcessFilesForm": { - "properties": { - "files": { - "items": { - "$ref": "#/components/schemas/FileModel" - }, - "type": "array", - "title": "Files" - }, - "collection_name": { - "type": "string", - "title": "Collection Name" - } - }, - "type": "object", - "required": [ - "files", - "collection_name" - ], - "title": "BatchProcessFilesForm" - }, - "BatchProcessFilesResponse": { - "properties": { - "results": { - "items": { - "$ref": "#/components/schemas/BatchProcessFilesResult" - }, - "type": "array", - "title": "Results" - }, - "errors": { - "items": { - "$ref": "#/components/schemas/BatchProcessFilesResult" - }, - "type": "array", - "title": "Errors" - } - }, - "type": "object", - "required": [ - "results", - "errors" - ], - "title": "BatchProcessFilesResponse" - }, - "BatchProcessFilesResult": { - "properties": { - "file_id": { - "type": "string", - "title": "File Id" - }, - "status": { - "type": "string", - "title": "Status" - }, - "error": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Error" - } - }, - "type": "object", - "required": [ - "file_id", - "status" - ], - "title": "BatchProcessFilesResult" - }, - "Body_transcription_api_v1_audio_transcriptions_post": { - "properties": { - "file": { - "type": "string", - "format": "binary", - "title": "File" - }, - "language": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Language" - } - }, - "type": "object", - "required": [ - "file" - ], - "title": "Body_transcription_api_v1_audio_transcriptions_post" - }, - "Body_upload_file_api_v1_files__post": { - "properties": { - "file": { - "type": "string", - "format": "binary", - "title": "File" - }, - "metadata": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Metadata" - } - }, - "type": "object", - "required": [ - "file" - ], - "title": "Body_upload_file_api_v1_files__post" - }, - "Body_upload_model_ollama_models_upload__url_idx__post": { - "properties": { - "file": { - "type": "string", - "format": "binary", - "title": "File" - } - }, - "type": "object", - "required": [ - "file" - ], - "title": "Body_upload_model_ollama_models_upload__url_idx__post" - }, - "Body_upload_model_ollama_models_upload_post": { - "properties": { - "file": { - "type": "string", - "format": "binary", - "title": "File" - } - }, - "type": "object", - "required": [ - "file" - ], - "title": "Body_upload_model_ollama_models_upload_post" - }, - "Body_upload_pipeline_api_v1_pipelines_upload_post": { - "properties": { - "urlIdx": { - "type": "integer", - "title": "Urlidx" - }, - "file": { - "type": "string", - "format": "binary", - "title": "File" - } - }, - "type": "object", - "required": [ - "urlIdx", - "file" - ], - "title": "Body_upload_pipeline_api_v1_pipelines_upload_post" - }, - "ChannelForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Description" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - } - }, - "type": "object", - "required": [ - "name" - ], - "title": "ChannelForm" - }, - "ChannelModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "type": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Type" - }, - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Description" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "created_at", - "updated_at" - ], - "title": "ChannelModel" - }, - "ChatFolderIdForm": { - "properties": { - "folder_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Folder Id" - } - }, - "type": "object", - "title": "ChatFolderIdForm" - }, - "ChatForm": { - "properties": { - "chat": { - "additionalProperties": true, - "type": "object", - "title": "Chat" - }, - "folder_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Folder Id" - } - }, - "type": "object", - "required": [ - "chat" - ], - "title": "ChatForm" - }, - "ChatImportForm": { - "properties": { - "chat": { - "additionalProperties": true, - "type": "object", - "title": "Chat" - }, - "folder_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Folder Id" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta", - "default": {} - }, - "pinned": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Pinned", - "default": false - }, - "created_at": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Created At" - }, - "updated_at": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "chat" - ], - "title": "ChatImportForm" - }, - "ChatPermissions": { - "properties": { - "controls": { - "type": "boolean", - "title": "Controls", - "default": true - }, - "system_prompt": { - "type": "boolean", - "title": "System Prompt", - "default": true - }, - "file_upload": { - "type": "boolean", - "title": "File Upload", - "default": true - }, - "delete": { - "type": "boolean", - "title": "Delete", - "default": true - }, - "edit": { - "type": "boolean", - "title": "Edit", - "default": true - }, - "share": { - "type": "boolean", - "title": "Share", - "default": true - }, - "export": { - "type": "boolean", - "title": "Export", - "default": true - }, - "stt": { - "type": "boolean", - "title": "Stt", - "default": true - }, - "tts": { - "type": "boolean", - "title": "Tts", - "default": true - }, - "call": { - "type": "boolean", - "title": "Call", - "default": true - }, - "multiple_models": { - "type": "boolean", - "title": "Multiple Models", - "default": true - }, - "temporary": { - "type": "boolean", - "title": "Temporary", - "default": true - }, - "temporary_enforced": { - "type": "boolean", - "title": "Temporary Enforced", - "default": false - } - }, - "type": "object", - "title": "ChatPermissions" - }, - "ChatResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "chat": { - "additionalProperties": true, - "type": "object", - "title": "Chat" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "share_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Share Id" - }, - "archived": { - "type": "boolean", - "title": "Archived" - }, - "pinned": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Pinned", - "default": false - }, - "meta": { - "additionalProperties": true, - "type": "object", - "title": "Meta", - "default": {} - }, - "folder_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Folder Id" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "title", - "chat", - "updated_at", - "created_at", - "archived" - ], - "title": "ChatResponse" - }, - "ChatTitleIdResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "title", - "updated_at", - "created_at" - ], - "title": "ChatTitleIdResponse" - }, - "ChatTitleMessagesForm": { - "properties": { - "title": { - "type": "string", - "title": "Title" - }, - "messages": { - "items": { - "additionalProperties": true, - "type": "object" - }, - "type": "array", - "title": "Messages" - } - }, - "type": "object", - "required": [ - "title", - "messages" - ], - "title": "ChatTitleMessagesForm" - }, - "CloneForm": { - "properties": { - "title": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Title" - } - }, - "type": "object", - "title": "CloneForm" - }, - "CodeForm": { - "properties": { - "code": { - "type": "string", - "title": "Code" - } - }, - "type": "object", - "required": [ - "code" - ], - "title": "CodeForm" - }, - "CodeInterpreterConfigForm": { - "properties": { - "ENABLE_CODE_EXECUTION": { - "type": "boolean", - "title": "Enable Code Execution" - }, - "CODE_EXECUTION_ENGINE": { - "type": "string", - "title": "Code Execution Engine" - }, - "CODE_EXECUTION_JUPYTER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Execution Jupyter Url" - }, - "CODE_EXECUTION_JUPYTER_AUTH": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Execution Jupyter Auth" - }, - "CODE_EXECUTION_JUPYTER_AUTH_TOKEN": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Execution Jupyter Auth Token" - }, - "CODE_EXECUTION_JUPYTER_AUTH_PASSWORD": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Execution Jupyter Auth Password" - }, - "CODE_EXECUTION_JUPYTER_TIMEOUT": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Code Execution Jupyter Timeout" - }, - "ENABLE_CODE_INTERPRETER": { - "type": "boolean", - "title": "Enable Code Interpreter" - }, - "CODE_INTERPRETER_ENGINE": { - "type": "string", - "title": "Code Interpreter Engine" - }, - "CODE_INTERPRETER_PROMPT_TEMPLATE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Interpreter Prompt Template" - }, - "CODE_INTERPRETER_JUPYTER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Interpreter Jupyter Url" - }, - "CODE_INTERPRETER_JUPYTER_AUTH": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Interpreter Jupyter Auth" - }, - "CODE_INTERPRETER_JUPYTER_AUTH_TOKEN": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Interpreter Jupyter Auth Token" - }, - "CODE_INTERPRETER_JUPYTER_AUTH_PASSWORD": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Code Interpreter Jupyter Auth Password" - }, - "CODE_INTERPRETER_JUPYTER_TIMEOUT": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Code Interpreter Jupyter Timeout" - } - }, - "type": "object", - "required": [ - "ENABLE_CODE_EXECUTION", - "CODE_EXECUTION_ENGINE", - "CODE_EXECUTION_JUPYTER_URL", - "CODE_EXECUTION_JUPYTER_AUTH", - "CODE_EXECUTION_JUPYTER_AUTH_TOKEN", - "CODE_EXECUTION_JUPYTER_AUTH_PASSWORD", - "CODE_EXECUTION_JUPYTER_TIMEOUT", - "ENABLE_CODE_INTERPRETER", - "CODE_INTERPRETER_ENGINE", - "CODE_INTERPRETER_PROMPT_TEMPLATE", - "CODE_INTERPRETER_JUPYTER_URL", - "CODE_INTERPRETER_JUPYTER_AUTH", - "CODE_INTERPRETER_JUPYTER_AUTH_TOKEN", - "CODE_INTERPRETER_JUPYTER_AUTH_PASSWORD", - "CODE_INTERPRETER_JUPYTER_TIMEOUT" - ], - "title": "CodeInterpreterConfigForm" - }, - "ComfyUIConfigForm": { - "properties": { - "COMFYUI_BASE_URL": { - "type": "string", - "title": "Comfyui Base Url" - }, - "COMFYUI_API_KEY": { - "type": "string", - "title": "Comfyui Api Key" - }, - "COMFYUI_WORKFLOW": { - "type": "string", - "title": "Comfyui Workflow" - }, - "COMFYUI_WORKFLOW_NODES": { - "items": { - "additionalProperties": true, - "type": "object" - }, - "type": "array", - "title": "Comfyui Workflow Nodes" - } - }, - "type": "object", - "required": [ - "COMFYUI_BASE_URL", - "COMFYUI_API_KEY", - "COMFYUI_WORKFLOW", - "COMFYUI_WORKFLOW_NODES" - ], - "title": "ComfyUIConfigForm" - }, - "ConnectionsConfigForm": { - "properties": { - "ENABLE_DIRECT_CONNECTIONS": { - "type": "boolean", - "title": "Enable Direct Connections" - }, - "ENABLE_BASE_MODELS_CACHE": { - "type": "boolean", - "title": "Enable Base Models Cache" - } - }, - "type": "object", - "required": [ - "ENABLE_DIRECT_CONNECTIONS", - "ENABLE_BASE_MODELS_CACHE" - ], - "title": "ConnectionsConfigForm" - }, - "ContentForm": { - "properties": { - "content": { - "type": "string", - "title": "Content" - } - }, - "type": "object", - "required": [ - "content" - ], - "title": "ContentForm" - }, - "CopyModelForm": { - "properties": { - "source": { - "type": "string", - "title": "Source" - }, - "destination": { - "type": "string", - "title": "Destination" - } - }, - "type": "object", - "required": [ - "source", - "destination" - ], - "title": "CopyModelForm" - }, - "CreateModelForm": { - "properties": { - "model": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Model" - }, - "stream": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Stream" - }, - "path": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Path" - } - }, - "additionalProperties": true, - "type": "object", - "title": "CreateModelForm" - }, - "DeleteForm": { - "properties": { - "collection_name": { - "type": "string", - "title": "Collection Name" - }, - "file_id": { - "type": "string", - "title": "File Id" - } - }, - "type": "object", - "required": [ - "collection_name", - "file_id" - ], - "title": "DeleteForm" - }, - "DeletePipelineForm": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "urlIdx": { - "type": "integer", - "title": "Urlidx" - } - }, - "type": "object", - "required": [ - "id", - "urlIdx" - ], - "title": "DeletePipelineForm" - }, - "EmbeddingModelUpdateForm": { - "properties": { - "openai_config": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__routers__retrieval__OpenAIConfigForm" - }, - { - "type": "null" - } - ] - }, - "ollama_config": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__routers__retrieval__OllamaConfigForm" - }, - { - "type": "null" - } - ] - }, - "azure_openai_config": { - "anyOf": [ - { - "$ref": "#/components/schemas/AzureOpenAIConfigForm" - }, - { - "type": "null" - } - ] - }, - "embedding_engine": { - "type": "string", - "title": "Embedding Engine" - }, - "embedding_model": { - "type": "string", - "title": "Embedding Model" - }, - "embedding_batch_size": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Embedding Batch Size", - "default": 1 - } - }, - "type": "object", - "required": [ - "embedding_engine", - "embedding_model" - ], - "title": "EmbeddingModelUpdateForm" - }, - "EventForm": { - "properties": { - "type": { - "type": "string", - "title": "Type" - }, - "data": { - "additionalProperties": true, - "type": "object", - "title": "Data" - } - }, - "type": "object", - "required": [ - "type", - "data" - ], - "title": "EventForm" - }, - "FeaturesPermissions": { - "properties": { - "direct_tool_servers": { - "type": "boolean", - "title": "Direct Tool Servers", - "default": false - }, - "web_search": { - "type": "boolean", - "title": "Web Search", - "default": true - }, - "image_generation": { - "type": "boolean", - "title": "Image Generation", - "default": true - }, - "code_interpreter": { - "type": "boolean", - "title": "Code Interpreter", - "default": true - }, - "notes": { - "type": "boolean", - "title": "Notes", - "default": true - } - }, - "type": "object", - "title": "FeaturesPermissions" - }, - "FeedbackForm": { - "properties": { - "type": { - "type": "string", - "title": "Type" - }, - "data": { - "anyOf": [ - { - "$ref": "#/components/schemas/RatingData" - }, - { - "type": "null" - } - ] - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "snapshot": { - "anyOf": [ - { - "$ref": "#/components/schemas/SnapshotData" - }, - { - "type": "null" - } - ] - } - }, - "additionalProperties": true, - "type": "object", - "required": [ - "type" - ], - "title": "FeedbackForm" - }, - "FeedbackModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "version": { - "type": "integer", - "title": "Version" - }, - "type": { - "type": "string", - "title": "Type" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "snapshot": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Snapshot" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "version", - "type", - "created_at", - "updated_at" - ], - "title": "FeedbackModel" - }, - "FeedbackUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "version": { - "type": "integer", - "title": "Version" - }, - "type": { - "type": "string", - "title": "Type" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "user": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__routers__evaluations__UserResponse" - }, - { - "type": "null" - } - ] - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "version", - "type", - "created_at", - "updated_at" - ], - "title": "FeedbackUserResponse" - }, - "FileMeta": { - "properties": { - "name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Name" - }, - "content_type": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Content Type" - }, - "size": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Size" - } - }, - "additionalProperties": true, - "type": "object", - "title": "FileMeta" - }, - "FileMetadataResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "meta": { - "additionalProperties": true, - "type": "object", - "title": "Meta" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "meta", - "created_at", - "updated_at" - ], - "title": "FileMetadataResponse" - }, - "FileModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "hash": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Hash" - }, - "filename": { - "type": "string", - "title": "Filename" - }, - "path": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Path" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Created At" - }, - "updated_at": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "filename", - "created_at", - "updated_at" - ], - "title": "FileModel" - }, - "FileModelResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "hash": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Hash" - }, - "filename": { - "type": "string", - "title": "Filename" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "$ref": "#/components/schemas/FileMeta" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "additionalProperties": true, - "type": "object", - "required": [ - "id", - "user_id", - "filename", - "meta", - "created_at", - "updated_at" - ], - "title": "FileModelResponse" - }, - "FolderForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - } - }, - "additionalProperties": true, - "type": "object", - "required": [ - "name" - ], - "title": "FolderForm" - }, - "FolderIsExpandedForm": { - "properties": { - "is_expanded": { - "type": "boolean", - "title": "Is Expanded" - } - }, - "type": "object", - "required": [ - "is_expanded" - ], - "title": "FolderIsExpandedForm" - }, - "FolderModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "parent_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Parent Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "items": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Items" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "is_expanded": { - "type": "boolean", - "title": "Is Expanded", - "default": false - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "created_at", - "updated_at" - ], - "title": "FolderModel" - }, - "FolderParentIdForm": { - "properties": { - "parent_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Parent Id" - } - }, - "type": "object", - "title": "FolderParentIdForm" - }, - "FunctionForm": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "content": { - "type": "string", - "title": "Content" - }, - "meta": { - "$ref": "#/components/schemas/FunctionMeta" - } - }, - "type": "object", - "required": [ - "id", - "name", - "content", - "meta" - ], - "title": "FunctionForm" - }, - "FunctionMeta": { - "properties": { - "description": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Description" - }, - "manifest": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Manifest", - "default": {} - } - }, - "type": "object", - "title": "FunctionMeta" - }, - "FunctionModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "type": { - "type": "string", - "title": "Type" - }, - "content": { - "type": "string", - "title": "Content" - }, - "meta": { - "$ref": "#/components/schemas/FunctionMeta" - }, - "is_active": { - "type": "boolean", - "title": "Is Active", - "default": false - }, - "is_global": { - "type": "boolean", - "title": "Is Global", - "default": false - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "type", - "content", - "meta", - "updated_at", - "created_at" - ], - "title": "FunctionModel" - }, - "FunctionResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "type": { - "type": "string", - "title": "Type" - }, - "name": { - "type": "string", - "title": "Name" - }, - "meta": { - "$ref": "#/components/schemas/FunctionMeta" - }, - "is_active": { - "type": "boolean", - "title": "Is Active" - }, - "is_global": { - "type": "boolean", - "title": "Is Global" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "type", - "name", - "meta", - "is_active", - "is_global", - "updated_at", - "created_at" - ], - "title": "FunctionResponse" - }, - "GeminiConfigForm": { - "properties": { - "GEMINI_API_BASE_URL": { - "type": "string", - "title": "Gemini Api Base Url" - }, - "GEMINI_API_KEY": { - "type": "string", - "title": "Gemini Api Key" - } - }, - "type": "object", - "required": [ - "GEMINI_API_BASE_URL", - "GEMINI_API_KEY" - ], - "title": "GeminiConfigForm" - }, - "GenerateCompletionForm": { - "properties": { - "model": { - "type": "string", - "title": "Model" - }, - "prompt": { - "type": "string", - "title": "Prompt" - }, - "suffix": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Suffix" - }, - "images": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Images" - }, - "format": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Format" - }, - "options": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Options" - }, - "system": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "System" - }, - "template": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Template" - }, - "context": { - "anyOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Context" - }, - "stream": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Stream", - "default": true - }, - "raw": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Raw" - }, - "keep_alive": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Keep Alive" - } - }, - "type": "object", - "required": [ - "model", - "prompt" - ], - "title": "GenerateCompletionForm" - }, - "GenerateEmbedForm": { - "properties": { - "model": { - "type": "string", - "title": "Model" - }, - "input": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "string" - } - ], - "title": "Input" - }, - "truncate": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Truncate" - }, - "options": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Options" - }, - "keep_alive": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Keep Alive" - } - }, - "type": "object", - "required": [ - "model", - "input" - ], - "title": "GenerateEmbedForm" - }, - "GenerateEmbeddingsForm": { - "properties": { - "model": { - "type": "string", - "title": "Model" - }, - "prompt": { - "type": "string", - "title": "Prompt" - }, - "options": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Options" - }, - "keep_alive": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Keep Alive" - } - }, - "type": "object", - "required": [ - "model", - "prompt" - ], - "title": "GenerateEmbeddingsForm" - }, - "GenerateImageForm": { - "properties": { - "model": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Model" - }, - "prompt": { - "type": "string", - "title": "Prompt" - }, - "size": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Size" - }, - "n": { - "type": "integer", - "title": "N", - "default": 1 - }, - "negative_prompt": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Negative Prompt" - } - }, - "type": "object", - "required": [ - "prompt" - ], - "title": "GenerateImageForm" - }, - "GroupForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "permissions": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Permissions" - } - }, - "type": "object", - "required": [ - "name", - "description" - ], - "title": "GroupForm" - }, - "GroupResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "permissions": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Permissions" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "user_ids": { - "items": { - "type": "string" - }, - "type": "array", - "title": "User Ids", - "default": [] - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "description", - "created_at", - "updated_at" - ], - "title": "GroupResponse" - }, - "GroupUpdateForm": { - "properties": { - "user_ids": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "User Ids" - }, - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "permissions": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Permissions" - } - }, - "type": "object", - "required": [ - "name", - "description" - ], - "title": "GroupUpdateForm" - }, - "HTTPValidationError": { - "properties": { - "detail": { - "items": { - "$ref": "#/components/schemas/ValidationError" - }, - "type": "array", - "title": "Detail" - } - }, - "type": "object", - "title": "HTTPValidationError" - }, - "ImageConfigForm": { - "properties": { - "MODEL": { - "type": "string", - "title": "Model" - }, - "IMAGE_SIZE": { - "type": "string", - "title": "Image Size" - }, - "IMAGE_STEPS": { - "type": "integer", - "title": "Image Steps" - } - }, - "type": "object", - "required": [ - "MODEL", - "IMAGE_SIZE", - "IMAGE_STEPS" - ], - "title": "ImageConfigForm" - }, - "ImportConfigForm": { - "properties": { - "config": { - "additionalProperties": true, - "type": "object", - "title": "Config" - } - }, - "type": "object", - "required": [ - "config" - ], - "title": "ImportConfigForm" - }, - "KnowledgeFileIdForm": { - "properties": { - "file_id": { - "type": "string", - "title": "File Id" - } - }, - "type": "object", - "required": [ - "file_id" - ], - "title": "KnowledgeFileIdForm" - }, - "KnowledgeFilesResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "files": { - "items": { - "$ref": "#/components/schemas/FileMetadataResponse" - }, - "type": "array", - "title": "Files" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "description", - "created_at", - "updated_at", - "files" - ], - "title": "KnowledgeFilesResponse" - }, - "KnowledgeForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - } - }, - "type": "object", - "required": [ - "name", - "description" - ], - "title": "KnowledgeForm" - }, - "KnowledgeResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "files": { - "anyOf": [ - { - "items": { - "anyOf": [ - { - "$ref": "#/components/schemas/FileMetadataResponse" - }, - { - "additionalProperties": true, - "type": "object" - } - ] - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Files" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "description", - "created_at", - "updated_at" - ], - "title": "KnowledgeResponse" - }, - "KnowledgeUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "description": { - "type": "string", - "title": "Description" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "user": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__models__users__UserResponse" - }, - { - "type": "null" - } - ] - }, - "files": { - "anyOf": [ - { - "items": { - "anyOf": [ - { - "$ref": "#/components/schemas/FileMetadataResponse" - }, - { - "additionalProperties": true, - "type": "object" - } - ] - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Files" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "description", - "created_at", - "updated_at" - ], - "title": "KnowledgeUserResponse" - }, - "LdapConfigForm": { - "properties": { - "enable_ldap": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Ldap" - } - }, - "type": "object", - "title": "LdapConfigForm" - }, - "LdapForm": { - "properties": { - "user": { - "type": "string", - "title": "User" - }, - "password": { - "type": "string", - "title": "Password" - } - }, - "type": "object", - "required": [ - "user", - "password" - ], - "title": "LdapForm" - }, - "LdapServerConfig": { - "properties": { - "label": { - "type": "string", - "title": "Label" - }, - "host": { - "type": "string", - "title": "Host" - }, - "port": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Port" - }, - "attribute_for_mail": { - "type": "string", - "title": "Attribute For Mail", - "default": "mail" - }, - "attribute_for_username": { - "type": "string", - "title": "Attribute For Username", - "default": "uid" - }, - "app_dn": { - "type": "string", - "title": "App Dn" - }, - "app_dn_password": { - "type": "string", - "title": "App Dn Password" - }, - "search_base": { - "type": "string", - "title": "Search Base" - }, - "search_filters": { - "type": "string", - "title": "Search Filters", - "default": "" - }, - "use_tls": { - "type": "boolean", - "title": "Use Tls", - "default": true - }, - "certificate_path": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Certificate Path" - }, - "validate_cert": { - "type": "boolean", - "title": "Validate Cert", - "default": true - }, - "ciphers": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Ciphers", - "default": "ALL" - } - }, - "type": "object", - "required": [ - "label", - "host", - "app_dn", - "app_dn_password", - "search_base" - ], - "title": "LdapServerConfig" - }, - "LoadUrlForm": { - "properties": { - "url": { - "type": "string", - "maxLength": 2083, - "minLength": 1, - "format": "uri", - "title": "Url" - } - }, - "type": "object", - "required": [ - "url" - ], - "title": "LoadUrlForm" - }, - "MarkdownForm": { - "properties": { - "md": { - "type": "string", - "title": "Md" - } - }, - "type": "object", - "required": [ - "md" - ], - "title": "MarkdownForm" - }, - "MemoryModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "content": { - "type": "string", - "title": "Content" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "content", - "updated_at", - "created_at" - ], - "title": "MemoryModel" - }, - "MemoryUpdateModel": { - "properties": { - "content": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Content" - } - }, - "type": "object", - "title": "MemoryUpdateModel" - }, - "MessageModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "channel_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Channel Id" - }, - "parent_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Parent Id" - }, - "content": { - "type": "string", - "title": "Content" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "content", - "created_at", - "updated_at" - ], - "title": "MessageModel" - }, - "MessageUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "channel_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Channel Id" - }, - "parent_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Parent Id" - }, - "content": { - "type": "string", - "title": "Content" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "latest_reply_at": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Latest Reply At" - }, - "reply_count": { - "type": "integer", - "title": "Reply Count" - }, - "reactions": { - "items": { - "$ref": "#/components/schemas/Reactions" - }, - "type": "array", - "title": "Reactions" - }, - "user": { - "$ref": "#/components/schemas/UserNameResponse" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "content", - "created_at", - "updated_at", - "latest_reply_at", - "reply_count", - "reactions", - "user" - ], - "title": "MessageUserResponse" - }, - "ModelForm": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "base_model_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Base Model Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "meta": { - "$ref": "#/components/schemas/ModelMeta" - }, - "params": { - "$ref": "#/components/schemas/ModelParams" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "is_active": { - "type": "boolean", - "title": "Is Active", - "default": true - } - }, - "type": "object", - "required": [ - "id", - "name", - "meta", - "params" - ], - "title": "ModelForm" - }, - "ModelMeta": { - "properties": { - "profile_image_url": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Profile Image Url", - "default": "/static/favicon.png" - }, - "description": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Description" - }, - "capabilities": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Capabilities" - } - }, - "additionalProperties": true, - "type": "object", - "title": "ModelMeta" - }, - "ModelModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "base_model_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Base Model Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "params": { - "$ref": "#/components/schemas/ModelParams" - }, - "meta": { - "$ref": "#/components/schemas/ModelMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "is_active": { - "type": "boolean", - "title": "Is Active" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "params", - "meta", - "is_active", - "updated_at", - "created_at" - ], - "title": "ModelModel" - }, - "ModelNameForm": { - "properties": { - "model": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Model" - } - }, - "additionalProperties": true, - "type": "object", - "title": "ModelNameForm" - }, - "ModelParams": { - "properties": {}, - "additionalProperties": true, - "type": "object", - "title": "ModelParams" - }, - "ModelResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "base_model_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Base Model Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "params": { - "$ref": "#/components/schemas/ModelParams" - }, - "meta": { - "$ref": "#/components/schemas/ModelMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "is_active": { - "type": "boolean", - "title": "Is Active" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "params", - "meta", - "is_active", - "updated_at", - "created_at" - ], - "title": "ModelResponse" - }, - "ModelUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "base_model_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Base Model Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "params": { - "$ref": "#/components/schemas/ModelParams" - }, - "meta": { - "$ref": "#/components/schemas/ModelMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "is_active": { - "type": "boolean", - "title": "Is Active" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "user": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__models__users__UserResponse" - }, - { - "type": "null" - } - ] - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "params", - "meta", - "is_active", - "updated_at", - "created_at" - ], - "title": "ModelUserResponse" - }, - "ModelsConfigForm": { - "properties": { - "DEFAULT_MODELS": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Default Models" - }, - "MODEL_ORDER_LIST": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Model Order List" - } - }, - "type": "object", - "required": [ - "DEFAULT_MODELS", - "MODEL_ORDER_LIST" - ], - "title": "ModelsConfigForm" - }, - "NoteForm": { - "properties": { - "title": { - "type": "string", - "title": "Title" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - } - }, - "type": "object", - "required": [ - "title" - ], - "title": "NoteForm" - }, - "NoteModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "title", - "created_at", - "updated_at" - ], - "title": "NoteModel" - }, - "NoteTitleIdResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "title", - "updated_at", - "created_at" - ], - "title": "NoteTitleIdResponse" - }, - "NoteUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "user": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__models__users__UserResponse" - }, - { - "type": "null" - } - ] - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "title", - "created_at", - "updated_at" - ], - "title": "NoteUserResponse" - }, - "ProcessFileForm": { - "properties": { - "file_id": { - "type": "string", - "title": "File Id" - }, - "content": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Content" - }, - "collection_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Collection Name" - } - }, - "type": "object", - "required": [ - "file_id" - ], - "title": "ProcessFileForm" - }, - "ProcessTextForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "content": { - "type": "string", - "title": "Content" - }, - "collection_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Collection Name" - } - }, - "type": "object", - "required": [ - "name", - "content" - ], - "title": "ProcessTextForm" - }, - "ProcessUrlForm": { - "properties": { - "collection_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Collection Name" - }, - "url": { - "type": "string", - "title": "Url" - } - }, - "type": "object", - "required": [ - "url" - ], - "title": "ProcessUrlForm" - }, - "PromptForm": { - "properties": { - "command": { - "type": "string", - "title": "Command" - }, - "title": { - "type": "string", - "title": "Title" - }, - "content": { - "type": "string", - "title": "Content" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - } - }, - "type": "object", - "required": [ - "command", - "title", - "content" - ], - "title": "PromptForm" - }, - "PromptModel": { - "properties": { - "command": { - "type": "string", - "title": "Command" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "content": { - "type": "string", - "title": "Content" - }, - "timestamp": { - "type": "integer", - "title": "Timestamp" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - } - }, - "type": "object", - "required": [ - "command", - "user_id", - "title", - "content", - "timestamp" - ], - "title": "PromptModel" - }, - "PromptSuggestion": { - "properties": { - "title": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Title" - }, - "content": { - "type": "string", - "title": "Content" - } - }, - "type": "object", - "required": [ - "title", - "content" - ], - "title": "PromptSuggestion" - }, - "PromptUserResponse": { - "properties": { - "command": { - "type": "string", - "title": "Command" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "title": { - "type": "string", - "title": "Title" - }, - "content": { - "type": "string", - "title": "Content" - }, - "timestamp": { - "type": "integer", - "title": "Timestamp" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "user": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__models__users__UserResponse" - }, - { - "type": "null" - } - ] - } - }, - "type": "object", - "required": [ - "command", - "user_id", - "title", - "content", - "timestamp" - ], - "title": "PromptUserResponse" - }, - "PushModelForm": { - "properties": { - "model": { - "type": "string", - "title": "Model" - }, - "insecure": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Insecure" - }, - "stream": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Stream" - } - }, - "type": "object", - "required": [ - "model" - ], - "title": "PushModelForm" - }, - "QueryCollectionsForm": { - "properties": { - "collection_names": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Collection Names" - }, - "query": { - "type": "string", - "title": "Query" - }, - "k": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "K" - }, - "k_reranker": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "K Reranker" - }, - "r": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ], - "title": "R" - }, - "hybrid": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Hybrid" - }, - "hybrid_bm25_weight": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ], - "title": "Hybrid Bm25 Weight" - } - }, - "type": "object", - "required": [ - "collection_names", - "query" - ], - "title": "QueryCollectionsForm" - }, - "QueryDocForm": { - "properties": { - "collection_name": { - "type": "string", - "title": "Collection Name" - }, - "query": { - "type": "string", - "title": "Query" - }, - "k": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "K" - }, - "k_reranker": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "K Reranker" - }, - "r": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ], - "title": "R" - }, - "hybrid": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Hybrid" - } - }, - "type": "object", - "required": [ - "collection_name", - "query" - ], - "title": "QueryDocForm" - }, - "QueryMemoryForm": { - "properties": { - "content": { - "type": "string", - "title": "Content" - }, - "k": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "K", - "default": 1 - } - }, - "type": "object", - "required": [ - "content" - ], - "title": "QueryMemoryForm" - }, - "RatingData": { - "properties": { - "rating": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Rating" - }, - "model_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Model Id" - }, - "sibling_model_ids": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Sibling Model Ids" - }, - "reason": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Reason" - }, - "comment": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Comment" - } - }, - "additionalProperties": true, - "type": "object", - "title": "RatingData" - }, - "ReactionForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - } - }, - "type": "object", - "required": [ - "name" - ], - "title": "ReactionForm" - }, - "Reactions": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "user_ids": { - "items": { - "type": "string" - }, - "type": "array", - "title": "User Ids" - }, - "count": { - "type": "integer", - "title": "Count" - } - }, - "type": "object", - "required": [ - "name", - "user_ids", - "count" - ], - "title": "Reactions" - }, - "STTConfigForm": { - "properties": { - "OPENAI_API_BASE_URL": { - "type": "string", - "title": "Openai Api Base Url" - }, - "OPENAI_API_KEY": { - "type": "string", - "title": "Openai Api Key" - }, - "ENGINE": { - "type": "string", - "title": "Engine" - }, - "MODEL": { - "type": "string", - "title": "Model" - }, - "SUPPORTED_CONTENT_TYPES": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Supported Content Types", - "default": [] - }, - "WHISPER_MODEL": { - "type": "string", - "title": "Whisper Model" - }, - "DEEPGRAM_API_KEY": { - "type": "string", - "title": "Deepgram Api Key" - }, - "AZURE_API_KEY": { - "type": "string", - "title": "Azure Api Key" - }, - "AZURE_REGION": { - "type": "string", - "title": "Azure Region" - }, - "AZURE_LOCALES": { - "type": "string", - "title": "Azure Locales" - }, - "AZURE_BASE_URL": { - "type": "string", - "title": "Azure Base Url" - }, - "AZURE_MAX_SPEAKERS": { - "type": "string", - "title": "Azure Max Speakers" - } - }, - "type": "object", - "required": [ - "OPENAI_API_BASE_URL", - "OPENAI_API_KEY", - "ENGINE", - "MODEL", - "WHISPER_MODEL", - "DEEPGRAM_API_KEY", - "AZURE_API_KEY", - "AZURE_REGION", - "AZURE_LOCALES", - "AZURE_BASE_URL", - "AZURE_MAX_SPEAKERS" - ], - "title": "STTConfigForm" - }, - "SearchForm": { - "properties": { - "queries": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Queries" - } - }, - "type": "object", - "required": [ - "queries" - ], - "title": "SearchForm" - }, - "SessionUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "email": { - "type": "string", - "title": "Email" - }, - "name": { - "type": "string", - "title": "Name" - }, - "role": { - "type": "string", - "title": "Role" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - }, - "token": { - "type": "string", - "title": "Token" - }, - "token_type": { - "type": "string", - "title": "Token Type" - }, - "expires_at": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Expires At" - }, - "permissions": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Permissions" - } - }, - "type": "object", - "required": [ - "id", - "email", - "name", - "role", - "profile_image_url", - "token", - "token_type" - ], - "title": "SessionUserResponse" - }, - "SetBannersForm": { - "properties": { - "banners": { - "items": { - "$ref": "#/components/schemas/BannerModel" - }, - "type": "array", - "title": "Banners" - } - }, - "type": "object", - "required": [ - "banners" - ], - "title": "SetBannersForm" - }, - "SetDefaultSuggestionsForm": { - "properties": { - "suggestions": { - "items": { - "$ref": "#/components/schemas/PromptSuggestion" - }, - "type": "array", - "title": "Suggestions" - } - }, - "type": "object", - "required": [ - "suggestions" - ], - "title": "SetDefaultSuggestionsForm" - }, - "SharingPermissions": { - "properties": { - "public_models": { - "type": "boolean", - "title": "Public Models", - "default": true - }, - "public_knowledge": { - "type": "boolean", - "title": "Public Knowledge", - "default": true - }, - "public_prompts": { - "type": "boolean", - "title": "Public Prompts", - "default": true - }, - "public_tools": { - "type": "boolean", - "title": "Public Tools", - "default": true - } - }, - "type": "object", - "title": "SharingPermissions" - }, - "SigninForm": { - "properties": { - "email": { - "type": "string", - "title": "Email" - }, - "password": { - "type": "string", - "title": "Password" - } - }, - "type": "object", - "required": [ - "email", - "password" - ], - "title": "SigninForm" - }, - "SigninResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "email": { - "type": "string", - "title": "Email" - }, - "name": { - "type": "string", - "title": "Name" - }, - "role": { - "type": "string", - "title": "Role" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - }, - "token": { - "type": "string", - "title": "Token" - }, - "token_type": { - "type": "string", - "title": "Token Type" - } - }, - "type": "object", - "required": [ - "id", - "email", - "name", - "role", - "profile_image_url", - "token", - "token_type" - ], - "title": "SigninResponse" - }, - "SignupForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "password": { - "type": "string", - "title": "Password" - }, - "profile_image_url": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Profile Image Url", - "default": "/user.png" - } - }, - "type": "object", - "required": [ - "name", - "email", - "password" - ], - "title": "SignupForm" - }, - "SnapshotData": { - "properties": { - "chat": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Chat" - } - }, - "additionalProperties": true, - "type": "object", - "title": "SnapshotData" - }, - "SyncFunctionsForm": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "content": { - "type": "string", - "title": "Content" - }, - "meta": { - "$ref": "#/components/schemas/FunctionMeta" - }, - "functions": { - "items": { - "$ref": "#/components/schemas/FunctionModel" - }, - "type": "array", - "title": "Functions", - "default": [] - } - }, - "type": "object", - "required": [ - "id", - "name", - "content", - "meta" - ], - "title": "SyncFunctionsForm" - }, - "TTSConfigForm": { - "properties": { - "OPENAI_API_BASE_URL": { - "type": "string", - "title": "Openai Api Base Url" - }, - "OPENAI_API_KEY": { - "type": "string", - "title": "Openai Api Key" - }, - "API_KEY": { - "type": "string", - "title": "Api Key" - }, - "ENGINE": { - "type": "string", - "title": "Engine" - }, - "MODEL": { - "type": "string", - "title": "Model" - }, - "VOICE": { - "type": "string", - "title": "Voice" - }, - "SPLIT_ON": { - "type": "string", - "title": "Split On" - }, - "AZURE_SPEECH_REGION": { - "type": "string", - "title": "Azure Speech Region" - }, - "AZURE_SPEECH_BASE_URL": { - "type": "string", - "title": "Azure Speech Base Url" - }, - "AZURE_SPEECH_OUTPUT_FORMAT": { - "type": "string", - "title": "Azure Speech Output Format" - } - }, - "type": "object", - "required": [ - "OPENAI_API_BASE_URL", - "OPENAI_API_KEY", - "API_KEY", - "ENGINE", - "MODEL", - "VOICE", - "SPLIT_ON", - "AZURE_SPEECH_REGION", - "AZURE_SPEECH_BASE_URL", - "AZURE_SPEECH_OUTPUT_FORMAT" - ], - "title": "TTSConfigForm" - }, - "TagFilterForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "skip": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Skip", - "default": 0 - }, - "limit": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Limit", - "default": 50 - } - }, - "type": "object", - "required": [ - "name" - ], - "title": "TagFilterForm" - }, - "TagForm": { - "properties": { - "name": { - "type": "string", - "title": "Name" - } - }, - "type": "object", - "required": [ - "name" - ], - "title": "TagForm" - }, - "TagModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - } - }, - "type": "object", - "required": [ - "id", - "name", - "user_id" - ], - "title": "TagModel" - }, - "TaskConfigForm": { - "properties": { - "TASK_MODEL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Task Model" - }, - "TASK_MODEL_EXTERNAL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Task Model External" - }, - "ENABLE_TITLE_GENERATION": { - "type": "boolean", - "title": "Enable Title Generation" - }, - "TITLE_GENERATION_PROMPT_TEMPLATE": { - "type": "string", - "title": "Title Generation Prompt Template" - }, - "IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE": { - "type": "string", - "title": "Image Prompt Generation Prompt Template" - }, - "ENABLE_AUTOCOMPLETE_GENERATION": { - "type": "boolean", - "title": "Enable Autocomplete Generation" - }, - "AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTH": { - "type": "integer", - "title": "Autocomplete Generation Input Max Length" - }, - "TAGS_GENERATION_PROMPT_TEMPLATE": { - "type": "string", - "title": "Tags Generation Prompt Template" - }, - "FOLLOW_UP_GENERATION_PROMPT_TEMPLATE": { - "type": "string", - "title": "Follow Up Generation Prompt Template" - }, - "ENABLE_FOLLOW_UP_GENERATION": { - "type": "boolean", - "title": "Enable Follow Up Generation" - }, - "ENABLE_TAGS_GENERATION": { - "type": "boolean", - "title": "Enable Tags Generation" - }, - "ENABLE_SEARCH_QUERY_GENERATION": { - "type": "boolean", - "title": "Enable Search Query Generation" - }, - "ENABLE_RETRIEVAL_QUERY_GENERATION": { - "type": "boolean", - "title": "Enable Retrieval Query Generation" - }, - "QUERY_GENERATION_PROMPT_TEMPLATE": { - "type": "string", - "title": "Query Generation Prompt Template" - }, - "TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE": { - "type": "string", - "title": "Tools Function Calling Prompt Template" - } - }, - "type": "object", - "required": [ - "TASK_MODEL", - "TASK_MODEL_EXTERNAL", - "ENABLE_TITLE_GENERATION", - "TITLE_GENERATION_PROMPT_TEMPLATE", - "IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE", - "ENABLE_AUTOCOMPLETE_GENERATION", - "AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTH", - "TAGS_GENERATION_PROMPT_TEMPLATE", - "FOLLOW_UP_GENERATION_PROMPT_TEMPLATE", - "ENABLE_FOLLOW_UP_GENERATION", - "ENABLE_TAGS_GENERATION", - "ENABLE_SEARCH_QUERY_GENERATION", - "ENABLE_RETRIEVAL_QUERY_GENERATION", - "QUERY_GENERATION_PROMPT_TEMPLATE", - "TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE" - ], - "title": "TaskConfigForm" - }, - "ToolForm": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "content": { - "type": "string", - "title": "Content" - }, - "meta": { - "$ref": "#/components/schemas/ToolMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - } - }, - "type": "object", - "required": [ - "id", - "name", - "content", - "meta" - ], - "title": "ToolForm" - }, - "ToolMeta": { - "properties": { - "description": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Description" - }, - "manifest": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Manifest", - "default": {} - } - }, - "type": "object", - "title": "ToolMeta" - }, - "ToolModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "content": { - "type": "string", - "title": "Content" - }, - "specs": { - "items": { - "additionalProperties": true, - "type": "object" - }, - "type": "array", - "title": "Specs" - }, - "meta": { - "$ref": "#/components/schemas/ToolMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "content", - "specs", - "meta", - "updated_at", - "created_at" - ], - "title": "ToolModel" - }, - "ToolResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "meta": { - "$ref": "#/components/schemas/ToolMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "meta", - "updated_at", - "created_at" - ], - "title": "ToolResponse" - }, - "ToolServerConnection": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "path": { - "type": "string", - "title": "Path" - }, - "auth_type": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Auth Type" - }, - "key": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Key" - }, - "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Config" - } - }, - "additionalProperties": true, - "type": "object", - "required": [ - "url", - "path", - "auth_type", - "key", - "config" - ], - "title": "ToolServerConnection" - }, - "ToolServersConfigForm": { - "properties": { - "TOOL_SERVER_CONNECTIONS": { - "items": { - "$ref": "#/components/schemas/ToolServerConnection" - }, - "type": "array", - "title": "Tool Server Connections" - } - }, - "type": "object", - "required": [ - "TOOL_SERVER_CONNECTIONS" - ], - "title": "ToolServersConfigForm" - }, - "ToolUserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "user_id": { - "type": "string", - "title": "User Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "meta": { - "$ref": "#/components/schemas/ToolMeta" - }, - "access_control": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Access Control" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "user": { - "anyOf": [ - { - "$ref": "#/components/schemas/open_webui__models__users__UserResponse" - }, - { - "type": "null" - } - ] - } - }, - "type": "object", - "required": [ - "id", - "user_id", - "name", - "meta", - "updated_at", - "created_at" - ], - "title": "ToolUserResponse" - }, - "UpdateConfigForm": { - "properties": { - "ENABLE_EVALUATION_ARENA_MODELS": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Evaluation Arena Models" - }, - "EVALUATION_ARENA_MODELS": { - "anyOf": [ - { - "items": { - "additionalProperties": true, - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Evaluation Arena Models" - } - }, - "type": "object", - "title": "UpdateConfigForm" - }, - "UpdatePasswordForm": { - "properties": { - "password": { - "type": "string", - "title": "Password" - }, - "new_password": { - "type": "string", - "title": "New Password" - } - }, - "type": "object", - "required": [ - "password", - "new_password" - ], - "title": "UpdatePasswordForm" - }, - "UpdateProfileForm": { - "properties": { - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - }, - "name": { - "type": "string", - "title": "Name" - } - }, - "type": "object", - "required": [ - "profile_image_url", - "name" - ], - "title": "UpdateProfileForm" - }, - "UrlForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - } - }, - "type": "object", - "required": [ - "url" - ], - "title": "UrlForm" - }, - "UserIdsForm": { - "properties": { - "user_ids": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "User Ids" - } - }, - "type": "object", - "title": "UserIdsForm" - }, - "UserInfoListResponse": { - "properties": { - "users": { - "items": { - "$ref": "#/components/schemas/UserInfoResponse" - }, - "type": "array", - "title": "Users" - }, - "total": { - "type": "integer", - "title": "Total" - } - }, - "type": "object", - "required": [ - "users", - "total" - ], - "title": "UserInfoListResponse" - }, - "UserInfoResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "role": { - "type": "string", - "title": "Role" - } - }, - "type": "object", - "required": [ - "id", - "name", - "email", - "role" - ], - "title": "UserInfoResponse" - }, - "UserListResponse": { - "properties": { - "users": { - "items": { - "$ref": "#/components/schemas/UserModel" - }, - "type": "array", - "title": "Users" - }, - "total": { - "type": "integer", - "title": "Total" - } - }, - "type": "object", - "required": [ - "users", - "total" - ], - "title": "UserListResponse" - }, - "UserModel": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "role": { - "type": "string", - "title": "Role", - "default": "pending" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - }, - "last_active_at": { - "type": "integer", - "title": "Last Active At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - }, - "api_key": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Api Key" - }, - "settings": { - "anyOf": [ - { - "$ref": "#/components/schemas/UserSettings" - }, - { - "type": "null" - } - ] - }, - "info": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Info" - }, - "oauth_sub": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Oauth Sub" - } - }, - "type": "object", - "required": [ - "id", - "name", - "email", - "profile_image_url", - "last_active_at", - "updated_at", - "created_at" - ], - "title": "UserModel" - }, - "UserNameResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "role": { - "type": "string", - "title": "Role" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - } - }, - "type": "object", - "required": [ - "id", - "name", - "role", - "profile_image_url" - ], - "title": "UserNameResponse" - }, - "UserPermissions": { - "properties": { - "workspace": { - "$ref": "#/components/schemas/WorkspacePermissions" - }, - "sharing": { - "$ref": "#/components/schemas/SharingPermissions" - }, - "chat": { - "$ref": "#/components/schemas/ChatPermissions" - }, - "features": { - "$ref": "#/components/schemas/FeaturesPermissions" - } - }, - "type": "object", - "required": [ - "workspace", - "sharing", - "chat", - "features" - ], - "title": "UserPermissions" - }, - "UserSettings": { - "properties": { - "ui": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Ui", - "default": {} - } - }, - "additionalProperties": true, - "type": "object", - "title": "UserSettings" - }, - "UserUpdateForm": { - "properties": { - "role": { - "type": "string", - "title": "Role" - }, - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - }, - "password": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Password" - } - }, - "type": "object", - "required": [ - "role", - "name", - "email", - "profile_image_url" - ], - "title": "UserUpdateForm" - }, - "ValidationError": { - "properties": { - "loc": { - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "integer" - } - ] - }, - "type": "array", - "title": "Location" - }, - "msg": { - "type": "string", - "title": "Message" - }, - "type": { - "type": "string", - "title": "Error Type" - } - }, - "type": "object", - "required": [ - "loc", - "msg", - "type" - ], - "title": "ValidationError" - }, - "WebConfig": { - "properties": { - "ENABLE_WEB_SEARCH": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Web Search" - }, - "WEB_SEARCH_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Web Search Engine" - }, - "WEB_SEARCH_TRUST_ENV": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Web Search Trust Env" - }, - "WEB_SEARCH_RESULT_COUNT": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Web Search Result Count" - }, - "WEB_SEARCH_CONCURRENT_REQUESTS": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Web Search Concurrent Requests" - }, - "WEB_SEARCH_DOMAIN_FILTER_LIST": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Web Search Domain Filter List", - "default": [] - }, - "BYPASS_WEB_SEARCH_EMBEDDING_AND_RETRIEVAL": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Bypass Web Search Embedding And Retrieval" - }, - "BYPASS_WEB_SEARCH_WEB_LOADER": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Bypass Web Search Web Loader" - }, - "SEARXNG_QUERY_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Searxng Query Url" - }, - "YACY_QUERY_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Yacy Query Url" - }, - "YACY_USERNAME": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Yacy Username" - }, - "YACY_PASSWORD": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Yacy Password" - }, - "GOOGLE_PSE_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Google Pse Api Key" - }, - "GOOGLE_PSE_ENGINE_ID": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Google Pse Engine Id" - }, - "BRAVE_SEARCH_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Brave Search Api Key" - }, - "KAGI_SEARCH_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Kagi Search Api Key" - }, - "MOJEEK_SEARCH_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Mojeek Search Api Key" - }, - "BOCHA_SEARCH_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Bocha Search Api Key" - }, - "SERPSTACK_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Serpstack Api Key" - }, - "SERPSTACK_HTTPS": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Serpstack Https" - }, - "SERPER_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Serper Api Key" - }, - "SERPLY_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Serply Api Key" - }, - "TAVILY_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Tavily Api Key" - }, - "SEARCHAPI_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Searchapi Api Key" - }, - "SEARCHAPI_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Searchapi Engine" - }, - "SERPAPI_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Serpapi Api Key" - }, - "SERPAPI_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Serpapi Engine" - }, - "JINA_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Jina Api Key" - }, - "BING_SEARCH_V7_ENDPOINT": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Bing Search V7 Endpoint" - }, - "BING_SEARCH_V7_SUBSCRIPTION_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Bing Search V7 Subscription Key" - }, - "EXA_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Exa Api Key" - }, - "PERPLEXITY_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Perplexity Api Key" - }, - "PERPLEXITY_MODEL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Perplexity Model" - }, - "PERPLEXITY_SEARCH_CONTEXT_USAGE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Perplexity Search Context Usage" - }, - "SOUGOU_API_SID": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Sougou Api Sid" - }, - "SOUGOU_API_SK": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Sougou Api Sk" - }, - "WEB_LOADER_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Web Loader Engine" - }, - "ENABLE_WEB_LOADER_SSL_VERIFICATION": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Web Loader Ssl Verification" - }, - "PLAYWRIGHT_WS_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Playwright Ws Url" - }, - "PLAYWRIGHT_TIMEOUT": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Playwright Timeout" - }, - "FIRECRAWL_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Firecrawl Api Key" - }, - "FIRECRAWL_API_BASE_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Firecrawl Api Base Url" - }, - "TAVILY_EXTRACT_DEPTH": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Tavily Extract Depth" - }, - "EXTERNAL_WEB_SEARCH_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "External Web Search Url" - }, - "EXTERNAL_WEB_SEARCH_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "External Web Search Api Key" - }, - "EXTERNAL_WEB_LOADER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "External Web Loader Url" - }, - "EXTERNAL_WEB_LOADER_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "External Web Loader Api Key" - }, - "YOUTUBE_LOADER_LANGUAGE": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Youtube Loader Language" - }, - "YOUTUBE_LOADER_PROXY_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Youtube Loader Proxy Url" - }, - "YOUTUBE_LOADER_TRANSLATION": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Youtube Loader Translation" - } - }, - "type": "object", - "title": "WebConfig" - }, - "WorkspacePermissions": { - "properties": { - "models": { - "type": "boolean", - "title": "Models", - "default": false - }, - "knowledge": { - "type": "boolean", - "title": "Knowledge", - "default": false - }, - "prompts": { - "type": "boolean", - "title": "Prompts", - "default": false - }, - "tools": { - "type": "boolean", - "title": "Tools", - "default": false - } - }, - "type": "object", - "title": "WorkspacePermissions" - }, - "open_webui__models__auths__UserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "email": { - "type": "string", - "title": "Email" - }, - "name": { - "type": "string", - "title": "Name" - }, - "role": { - "type": "string", - "title": "Role" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - } - }, - "type": "object", - "required": [ - "id", - "email", - "name", - "role", - "profile_image_url" - ], - "title": "UserResponse" - }, - "open_webui__models__messages__MessageForm": { - "properties": { - "content": { - "type": "string", - "title": "Content" - }, - "parent_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Parent Id" - }, - "data": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Data" - }, - "meta": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Meta" - } - }, - "type": "object", - "required": [ - "content" - ], - "title": "MessageForm" - }, - "open_webui__models__users__UserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "role": { - "type": "string", - "title": "Role" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - } - }, - "type": "object", - "required": [ - "id", - "name", - "email", - "role", - "profile_image_url" - ], - "title": "UserResponse" - }, - "open_webui__routers__chats__MessageForm": { - "properties": { - "content": { - "type": "string", - "title": "Content" - } - }, - "type": "object", - "required": [ - "content" - ], - "title": "MessageForm" - }, - "open_webui__routers__evaluations__UserResponse": { - "properties": { - "id": { - "type": "string", - "title": "Id" - }, - "name": { - "type": "string", - "title": "Name" - }, - "email": { - "type": "string", - "title": "Email" - }, - "role": { - "type": "string", - "title": "Role", - "default": "pending" - }, - "last_active_at": { - "type": "integer", - "title": "Last Active At" - }, - "updated_at": { - "type": "integer", - "title": "Updated At" - }, - "created_at": { - "type": "integer", - "title": "Created At" - } - }, - "type": "object", - "required": [ - "id", - "name", - "email", - "last_active_at", - "updated_at", - "created_at" - ], - "title": "UserResponse" - }, - "open_webui__routers__images__ConfigForm": { - "properties": { - "enabled": { - "type": "boolean", - "title": "Enabled" - }, - "engine": { - "type": "string", - "title": "Engine" - }, - "prompt_generation": { - "type": "boolean", - "title": "Prompt Generation" - }, - "openai": { - "$ref": "#/components/schemas/open_webui__routers__images__OpenAIConfigForm" - }, - "automatic1111": { - "$ref": "#/components/schemas/Automatic1111ConfigForm" - }, - "comfyui": { - "$ref": "#/components/schemas/ComfyUIConfigForm" - }, - "gemini": { - "$ref": "#/components/schemas/GeminiConfigForm" - } - }, - "type": "object", - "required": [ - "enabled", - "engine", - "prompt_generation", - "openai", - "automatic1111", - "comfyui", - "gemini" - ], - "title": "ConfigForm" - }, - "open_webui__routers__images__OpenAIConfigForm": { - "properties": { - "OPENAI_API_BASE_URL": { - "type": "string", - "title": "Openai Api Base Url" - }, - "OPENAI_API_KEY": { - "type": "string", - "title": "Openai Api Key" - } - }, - "type": "object", - "required": [ - "OPENAI_API_BASE_URL", - "OPENAI_API_KEY" - ], - "title": "OpenAIConfigForm" - }, - "open_webui__routers__ollama__ConnectionVerificationForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "key": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Key" - } - }, - "type": "object", - "required": [ - "url" - ], - "title": "ConnectionVerificationForm" - }, - "open_webui__routers__ollama__OllamaConfigForm": { - "properties": { - "ENABLE_OLLAMA_API": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Ollama Api" - }, - "OLLAMA_BASE_URLS": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Ollama Base Urls" - }, - "OLLAMA_API_CONFIGS": { - "additionalProperties": true, - "type": "object", - "title": "Ollama Api Configs" - } - }, - "type": "object", - "required": [ - "OLLAMA_BASE_URLS", - "OLLAMA_API_CONFIGS" - ], - "title": "OllamaConfigForm" - }, - "open_webui__routers__openai__ConnectionVerificationForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "key": { - "type": "string", - "title": "Key" - }, - "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Config" - } - }, - "type": "object", - "required": [ - "url", - "key" - ], - "title": "ConnectionVerificationForm" - }, - "open_webui__routers__openai__OpenAIConfigForm": { - "properties": { - "ENABLE_OPENAI_API": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Openai Api" - }, - "OPENAI_API_BASE_URLS": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Openai Api Base Urls" - }, - "OPENAI_API_KEYS": { - "items": { - "type": "string" - }, - "type": "array", - "title": "Openai Api Keys" - }, - "OPENAI_API_CONFIGS": { - "additionalProperties": true, - "type": "object", - "title": "Openai Api Configs" - } - }, - "type": "object", - "required": [ - "OPENAI_API_BASE_URLS", - "OPENAI_API_KEYS", - "OPENAI_API_CONFIGS" - ], - "title": "OpenAIConfigForm" - }, - "open_webui__routers__retrieval__ConfigForm": { - "properties": { - "RAG_TEMPLATE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Rag Template" - }, - "TOP_K": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Top K" - }, - "BYPASS_EMBEDDING_AND_RETRIEVAL": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Bypass Embedding And Retrieval" - }, - "RAG_FULL_CONTEXT": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Rag Full Context" - }, - "ENABLE_RAG_HYBRID_SEARCH": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Rag Hybrid Search" - }, - "TOP_K_RERANKER": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Top K Reranker" - }, - "RELEVANCE_THRESHOLD": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ], - "title": "Relevance Threshold" - }, - "HYBRID_BM25_WEIGHT": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ], - "title": "Hybrid Bm25 Weight" - }, - "CONTENT_EXTRACTION_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Content Extraction Engine" - }, - "PDF_EXTRACT_IMAGES": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Pdf Extract Images" - }, - "DATALAB_MARKER_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Api Key" - }, - "DATALAB_MARKER_LANGS": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Langs" - }, - "DATALAB_MARKER_SKIP_CACHE": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Skip Cache" - }, - "DATALAB_MARKER_FORCE_OCR": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Force Ocr" - }, - "DATALAB_MARKER_PAGINATE": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Paginate" - }, - "DATALAB_MARKER_STRIP_EXISTING_OCR": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Strip Existing Ocr" - }, - "DATALAB_MARKER_DISABLE_IMAGE_EXTRACTION": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Disable Image Extraction" - }, - "DATALAB_MARKER_USE_LLM": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Use Llm" - }, - "DATALAB_MARKER_OUTPUT_FORMAT": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Datalab Marker Output Format" - }, - "EXTERNAL_DOCUMENT_LOADER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "External Document Loader Url" - }, - "EXTERNAL_DOCUMENT_LOADER_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "External Document Loader Api Key" - }, - "TIKA_SERVER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Tika Server Url" - }, - "DOCLING_SERVER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Docling Server Url" - }, - "DOCLING_OCR_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Docling Ocr Engine" - }, - "DOCLING_OCR_LANG": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Docling Ocr Lang" - }, - "DOCLING_DO_PICTURE_DESCRIPTION": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Docling Do Picture Description" - }, - "DOCLING_PICTURE_DESCRIPTION_MODE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Docling Picture Description Mode" - }, - "DOCLING_PICTURE_DESCRIPTION_LOCAL": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Docling Picture Description Local" - }, - "DOCLING_PICTURE_DESCRIPTION_API": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "title": "Docling Picture Description Api" - }, - "DOCUMENT_INTELLIGENCE_ENDPOINT": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Document Intelligence Endpoint" - }, - "DOCUMENT_INTELLIGENCE_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Document Intelligence Key" - }, - "MISTRAL_OCR_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Mistral Ocr Api Key" - }, - "RAG_RERANKING_MODEL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Rag Reranking Model" - }, - "RAG_RERANKING_ENGINE": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Rag Reranking Engine" - }, - "RAG_EXTERNAL_RERANKER_URL": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Rag External Reranker Url" - }, - "RAG_EXTERNAL_RERANKER_API_KEY": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Rag External Reranker Api Key" - }, - "TEXT_SPLITTER": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "title": "Text Splitter" - }, - "CHUNK_SIZE": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Chunk Size" - }, - "CHUNK_OVERLAP": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "Chunk Overlap" - }, - "FILE_MAX_SIZE": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "File Max Size" - }, - "FILE_MAX_COUNT": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "File Max Count" - }, - "FILE_IMAGE_COMPRESSION_WIDTH": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "File Image Compression Width" - }, - "FILE_IMAGE_COMPRESSION_HEIGHT": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "title": "File Image Compression Height" - }, - "ALLOWED_FILE_EXTENSIONS": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "title": "Allowed File Extensions" - }, - "ENABLE_GOOGLE_DRIVE_INTEGRATION": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Google Drive Integration" - }, - "ENABLE_ONEDRIVE_INTEGRATION": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Enable Onedrive Integration" - }, - "web": { - "anyOf": [ - { - "$ref": "#/components/schemas/WebConfig" - }, - { - "type": "null" - } - ] - } - }, - "type": "object", - "title": "ConfigForm" - }, - "open_webui__routers__retrieval__OllamaConfigForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "key": { - "type": "string", - "title": "Key" - } - }, - "type": "object", - "required": [ - "url", - "key" - ], - "title": "OllamaConfigForm" - }, - "open_webui__routers__retrieval__OpenAIConfigForm": { - "properties": { - "url": { - "type": "string", - "title": "Url" - }, - "key": { - "type": "string", - "title": "Key" - } - }, - "type": "object", - "required": [ - "url", - "key" - ], - "title": "OpenAIConfigForm" - }, - "open_webui__routers__users__UserResponse": { - "properties": { - "name": { - "type": "string", - "title": "Name" - }, - "profile_image_url": { - "type": "string", - "title": "Profile Image Url" - }, - "active": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Active" - } - }, - "type": "object", - "required": [ - "name", - "profile_image_url" - ], - "title": "UserResponse" - } - }, - "securitySchemes": { - "HTTPBearer": { - "type": "http", - "scheme": "bearer" - } - } - } -} \ No newline at end of file diff --git a/lib/core/services/api_service.dart b/lib/core/services/api_service.dart index b4b8c19..6381274 100644 --- a/lib/core/services/api_service.dart +++ b/lib/core/services/api_service.dart @@ -12,7 +12,6 @@ import '../models/model.dart'; import '../models/conversation.dart'; import '../models/chat_message.dart'; import '../auth/api_auth_interceptor.dart'; -import '../validation/validation_interceptor.dart'; import '../error/api_error_interceptor.dart'; // Tool-call details are parsed in the UI layer to render collapsible blocks import 'persistent_streaming_service.dart'; @@ -66,16 +65,7 @@ class ApiService { // 1. Auth interceptor (must be first to add auth headers) _dio.interceptors.add(_authInterceptor); - // 2. Validation interceptor (validates requests/responses against OpenAPI schema) - // Disable for now to ensure parameters aren't being filtered - final validationInterceptor = ValidationInterceptor( - enableRequestValidation: false, // Disabled to preserve all parameters - enableResponseValidation: false, // Disabled for SSE streams - throwOnValidationError: false, - logValidationResults: kDebugMode, - ); - // Comment out to disable completely - // _dio.interceptors.add(validationInterceptor); + // 2. Validation interceptor removed (no schema loading/logging) // 3. Error handling interceptor (transforms errors to standardized format) _dio.interceptors.add( @@ -99,10 +89,7 @@ class ApiService { // We now use custom interceptors with secure logging via DebugLogger } - // Initialize validation interceptor asynchronously - validationInterceptor.initialize().catchError((error) { - // Handle validation initialization errors silently - }); + // Validation interceptor fully removed } void updateAuthToken(String token) { diff --git a/lib/core/validation/api_validator.dart b/lib/core/validation/api_validator.dart deleted file mode 100644 index 07320b5..0000000 --- a/lib/core/validation/api_validator.dart +++ /dev/null @@ -1,416 +0,0 @@ -import 'schema_registry.dart'; -import 'validation_result.dart'; -import 'field_mapper.dart'; -import '../utils/debug_logger.dart'; - -/// Comprehensive API request and response validator -/// Validates against OpenAPI specification schemas -class ApiValidator { - static final ApiValidator _instance = ApiValidator._internal(); - factory ApiValidator() => _instance; - ApiValidator._internal(); - - final SchemaRegistry _schemaRegistry = SchemaRegistry(); - final FieldMapper _fieldMapper = FieldMapper(); - - bool _initialized = false; - - bool get isInitialized => _initialized; - - /// Initialize validator with OpenAPI schemas - Future initialize() async { - if (_initialized) return; - - try { - await _schemaRegistry.loadSchemas(); - _initialized = true; - DebugLogger.validation('Successfully initialized with schemas'); - } catch (e) { - DebugLogger.error('Failed to initialize', e); - // Continue without validation if schemas can't be loaded - } - } - - /// Validate request payload before sending to API - ValidationResult validateRequest( - dynamic data, - String endpoint, { - String method = 'GET', - }) { - if (!_initialized) { - return ValidationResult.warning( - 'Validator not initialized - skipping validation', - ); - } - - try { - final schema = _schemaRegistry.getRequestSchema(endpoint, method); - if (schema == null) { - return ValidationResult.warning( - 'No schema found for $method $endpoint', - ); - } - - // Transform field names for API (camelCase -> snake_case) - final transformedData = _fieldMapper.toApiFormat(data); - - // Validate against schema - return _validateAgainstSchema(transformedData, schema, 'request'); - } catch (e) { - return ValidationResult.error('Request validation failed: $e'); - } - } - - /// Validate response payload after receiving from API - ValidationResult validateResponse( - dynamic data, - String endpoint, { - String method = 'GET', - int? statusCode, - }) { - if (!_initialized) { - return ValidationResult.warning( - 'Validator not initialized - skipping validation', - ); - } - - try { - final schema = _schemaRegistry.getResponseSchema( - endpoint, - method, - statusCode, - ); - if (schema == null) { - return ValidationResult.warning( - 'No schema found for $method $endpoint response', - ); - } - - // Validate against schema first - final validationResult = _validateAgainstSchema(data, schema, 'response'); - if (!validationResult.isValid) { - return validationResult; - } - - // Transform field names from API (snake_case -> camelCase) - final transformedData = _fieldMapper.fromApiFormat(data); - - return ValidationResult.success( - 'Response validated successfully', - data: transformedData, - ); - } catch (e) { - return ValidationResult.error('Response validation failed: $e'); - } - } - - /// Validate data against a specific schema - ValidationResult _validateAgainstSchema( - dynamic data, - Map schema, - String context, - ) { - final errors = []; - final warnings = []; - - try { - _validateValue(data, schema, '', errors, warnings); - - if (errors.isNotEmpty) { - return ValidationResult.error( - 'Schema validation failed for $context', - errors: errors, - warnings: warnings, - ); - } - - if (warnings.isNotEmpty) { - return ValidationResult.warning( - 'Schema validation passed with warnings for $context', - warnings: warnings, - ); - } - - return ValidationResult.success('Schema validation passed for $context'); - } catch (e) { - return ValidationResult.error('Schema validation error for $context: $e'); - } - } - - /// Recursively validate a value against schema - void _validateValue( - dynamic value, - Map schema, - String path, - List errors, - List warnings, - ) { - final type = schema['type'] as String?; - final required = schema['required'] as List? ?? []; - - // Handle null values - if (value == null) { - if (required.isNotEmpty && path.isNotEmpty) { - errors.add('Required field missing: $path'); - } - return; - } - - // Type validation - switch (type) { - case 'object': - _validateObject(value, schema, path, errors, warnings); - break; - case 'array': - _validateArray(value, schema, path, errors, warnings); - break; - case 'string': - _validateString(value, schema, path, errors, warnings); - break; - case 'number': - case 'integer': - _validateNumber(value, schema, path, errors, warnings); - break; - case 'boolean': - _validateBoolean(value, schema, path, errors, warnings); - break; - default: - // Unknown type - add warning but don't fail - warnings.add('Unknown schema type "$type" at $path'); - } - } - - void _validateObject( - dynamic value, - Map schema, - String path, - List errors, - List warnings, - ) { - if (value is! Map) { - errors.add('Expected object at $path, got ${value.runtimeType}'); - return; - } - - final valueMap = value as Map; - final properties = schema['properties'] as Map? ?? {}; - final required = (schema['required'] as List? ?? []) - .cast(); - - // Check required fields - for (final requiredField in required) { - if (!valueMap.containsKey(requiredField)) { - errors.add( - 'Required field missing: ${path.isEmpty ? '' : '$path.'}$requiredField', - ); - } - } - - // Validate each property - for (final entry in valueMap.entries) { - final fieldName = entry.key; - final fieldValue = entry.value; - final fieldPath = path.isEmpty ? fieldName : '$path.$fieldName'; - - if (properties.containsKey(fieldName)) { - _validateValue( - fieldValue, - properties[fieldName], - fieldPath, - errors, - warnings, - ); - } else { - // Additional property - warn but don't error - warnings.add('Additional property found: $fieldPath'); - } - } - } - - void _validateArray( - dynamic value, - Map schema, - String path, - List errors, - List warnings, - ) { - if (value is! List) { - errors.add('Expected array at $path, got ${value.runtimeType}'); - return; - } - - final array = value; - final items = schema['items'] as Map?; - final minItems = schema['minItems'] as int?; - final maxItems = schema['maxItems'] as int?; - - // Validate array constraints - if (minItems != null && array.length < minItems) { - errors.add( - 'Array at $path has ${array.length} items, minimum is $minItems', - ); - } - - if (maxItems != null && array.length > maxItems) { - errors.add( - 'Array at $path has ${array.length} items, maximum is $maxItems', - ); - } - - // Validate each item - if (items != null) { - for (int i = 0; i < array.length; i++) { - _validateValue(array[i], items, '$path[$i]', errors, warnings); - } - } - } - - void _validateString( - dynamic value, - Map schema, - String path, - List errors, - List warnings, - ) { - if (value is! String) { - errors.add('Expected string at $path, got ${value.runtimeType}'); - return; - } - - final string = value; - final minLength = schema['minLength'] as int?; - final maxLength = schema['maxLength'] as int?; - final pattern = schema['pattern'] as String?; - final format = schema['format'] as String?; - - if (minLength != null && string.length < minLength) { - errors.add( - 'String at $path is ${string.length} chars, minimum is $minLength', - ); - } - - if (maxLength != null && string.length > maxLength) { - errors.add( - 'String at $path is ${string.length} chars, maximum is $maxLength', - ); - } - - if (pattern != null) { - try { - final regex = RegExp(pattern); - if (!regex.hasMatch(string)) { - errors.add('String at $path does not match pattern: $pattern'); - } - } catch (e) { - warnings.add('Invalid regex pattern at $path: $pattern'); - } - } - - // Validate common formats - if (format != null) { - _validateStringFormat(string, format, path, errors, warnings); - } - } - - void _validateStringFormat( - String value, - String format, - String path, - List errors, - List warnings, - ) { - switch (format) { - case 'email': - final emailRegex = RegExp(r'^[^\s@]+@[^\s@]+\.[^\s@]+$'); - if (!emailRegex.hasMatch(value)) { - errors.add('Invalid email format at $path: $value'); - } - break; - case 'uri': - case 'url': - try { - Uri.parse(value); - } catch (e) { - errors.add('Invalid URL format at $path: $value'); - } - break; - case 'date': - try { - DateTime.parse(value); - } catch (e) { - errors.add('Invalid date format at $path: $value'); - } - break; - case 'date-time': - try { - DateTime.parse(value); - } catch (e) { - errors.add('Invalid datetime format at $path: $value'); - } - break; - case 'uuid': - final uuidRegex = RegExp( - r'^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$', - caseSensitive: false, - ); - if (!uuidRegex.hasMatch(value)) { - errors.add('Invalid UUID format at $path: $value'); - } - break; - default: - warnings.add('Unknown string format "$format" at $path'); - } - } - - void _validateNumber( - dynamic value, - Map schema, - String path, - List errors, - List warnings, - ) { - if (value is! num) { - errors.add('Expected number at $path, got ${value.runtimeType}'); - return; - } - - final number = value; - final minimum = schema['minimum'] as num?; - final maximum = schema['maximum'] as num?; - final multipleOf = schema['multipleOf'] as num?; - - if (minimum != null && number < minimum) { - errors.add('Number at $path is $number, minimum is $minimum'); - } - - if (maximum != null && number > maximum) { - errors.add('Number at $path is $number, maximum is $maximum'); - } - - if (multipleOf != null && number % multipleOf != 0) { - errors.add('Number at $path ($number) is not a multiple of $multipleOf'); - } - } - - void _validateBoolean( - dynamic value, - Map schema, - String path, - List errors, - List warnings, - ) { - if (value is! bool) { - errors.add('Expected boolean at $path, got ${value.runtimeType}'); - } - } - - /// Transform and validate data for API consumption - Map transformForApi(Map data) { - return _fieldMapper.toApiFormat(data); - } - - /// Transform and validate data from API response - Map transformFromApi(Map data) { - return _fieldMapper.fromApiFormat(data); - } -} diff --git a/lib/core/validation/field_mapper.dart b/lib/core/validation/field_mapper.dart deleted file mode 100644 index 4d9446b..0000000 --- a/lib/core/validation/field_mapper.dart +++ /dev/null @@ -1,279 +0,0 @@ -import '../utils/debug_logger.dart'; - -/// Handles field name transformations between API and client formats -/// Converts between snake_case (API) and camelCase (client) -class FieldMapper { - static final FieldMapper _instance = FieldMapper._internal(); - factory FieldMapper() => _instance; - FieldMapper._internal(); - - // Cache for converted field names to improve performance - final Map _toCamelCaseCache = {}; - final Map _toSnakeCaseCache = {}; - - // Special field mappings that don't follow standard conversion rules - static const Map _specialApiToClient = { - 'created_at': 'createdAt', - 'updated_at': 'updatedAt', - 'user_id': 'userId', - 'chat_id': 'chatId', - 'message_id': 'messageId', - 'session_id': 'sessionId', - 'folder_id': 'folderId', - 'share_id': 'shareId', - 'model_id': 'modelId', - 'tool_id': 'toolId', - 'function_id': 'functionId', - 'file_id': 'fileId', - 'knowledge_base_id': 'knowledgeBaseId', - 'channel_id': 'channelId', - 'note_id': 'noteId', - 'prompt_id': 'promptId', - 'memory_id': 'memoryId', - 'is_private': 'isPrivate', - 'is_enabled': 'isEnabled', - 'is_active': 'isActive', - 'is_archived': 'isArchived', - 'is_pinned': 'isPinned', - 'api_key': 'apiKey', - 'access_token': 'accessToken', - 'refresh_token': 'refreshToken', - 'content_type': 'contentType', - 'file_size': 'fileSize', - 'file_type': 'fileType', - 'mime_type': 'mimeType', - // OpenWebUI chat message fields - keep in camelCase - 'parentId': 'parentId', - 'childrenIds': 'childrenIds', - 'currentId': 'currentId', - 'modelName': 'modelName', - 'modelIdx': 'modelIdx', - }; - - static const Map _specialClientToApi = { - 'createdAt': 'created_at', - 'updatedAt': 'updated_at', - 'userId': 'user_id', - 'chatId': 'chat_id', - 'messageId': 'message_id', - 'sessionId': 'session_id', - 'folderId': 'folder_id', - 'shareId': 'share_id', - 'modelId': 'model_id', - 'toolId': 'tool_id', - 'functionId': 'function_id', - 'fileId': 'file_id', - 'knowledgeBaseId': 'knowledge_base_id', - 'channelId': 'channel_id', - 'noteId': 'note_id', - 'promptId': 'prompt_id', - 'memoryId': 'memory_id', - 'isPrivate': 'is_private', - 'isEnabled': 'is_enabled', - 'isActive': 'is_active', - 'isArchived': 'is_archived', - 'isPinned': 'is_pinned', - 'apiKey': 'api_key', - 'accessToken': 'access_token', - 'refreshToken': 'refresh_token', - 'contentType': 'content_type', - 'fileSize': 'file_size', - 'fileType': 'file_type', - 'mimeType': 'mime_type', - // OpenWebUI chat message fields - keep in camelCase - 'parentId': 'parentId', - 'childrenIds': 'childrenIds', - 'currentId': 'currentId', - 'modelName': 'modelName', - 'modelIdx': 'modelIdx', - }; - - /// Transform data from client format (camelCase) to API format (snake_case) - dynamic toApiFormat(dynamic data) { - if (data == null) return null; - - if (data is Map) { - return _transformMap(data, _toSnakeCase); - } else if (data is List) { - return data.map((item) => toApiFormat(item)).toList(); - } else { - return data; - } - } - - /// Transform data from API format (snake_case) to client format (camelCase) - dynamic fromApiFormat(dynamic data) { - if (data == null) return null; - - if (data is Map) { - return _transformMap(data, _toCamelCase); - } else if (data is List) { - return data.map((item) => fromApiFormat(item)).toList(); - } else { - return data; - } - } - - /// Transform a map using the provided key transformation function - Map _transformMap( - Map map, - String Function(String) keyTransform, - ) { - final transformed = {}; - - for (final entry in map.entries) { - final transformedKey = keyTransform(entry.key); - dynamic transformedValue = entry.value; - - // Recursively transform nested objects and arrays - if (transformedValue is Map) { - transformedValue = _transformMap(transformedValue, keyTransform); - } else if (transformedValue is List) { - transformedValue = transformedValue.map((item) { - if (item is Map) { - return _transformMap(item, keyTransform); - } - return item; - }).toList(); - } - - transformed[transformedKey] = transformedValue; - } - - return transformed; - } - - /// Convert snake_case to camelCase - String _toCamelCase(String snakeCase) { - // Check cache first - if (_toCamelCaseCache.containsKey(snakeCase)) { - return _toCamelCaseCache[snakeCase]!; - } - - // Check special mappings - if (_specialApiToClient.containsKey(snakeCase)) { - final result = _specialApiToClient[snakeCase]!; - _toCamelCaseCache[snakeCase] = result; - return result; - } - - // Standard conversion - if (!snakeCase.contains('_')) { - _toCamelCaseCache[snakeCase] = snakeCase; - return snakeCase; - } - - final words = snakeCase.split('_'); - final result = - words.first + words.skip(1).map((word) => _capitalize(word)).join(''); - - _toCamelCaseCache[snakeCase] = result; - return result; - } - - /// Convert camelCase to snake_case - String _toSnakeCase(String camelCase) { - // Check cache first - if (_toSnakeCaseCache.containsKey(camelCase)) { - return _toSnakeCaseCache[camelCase]!; - } - - // Check special mappings - if (_specialClientToApi.containsKey(camelCase)) { - final result = _specialClientToApi[camelCase]!; - _toSnakeCaseCache[camelCase] = result; - return result; - } - - // Standard conversion - final result = camelCase.replaceAllMapped( - RegExp(r'[A-Z]'), - (match) => '_${match.group(0)!.toLowerCase()}', - ); - - _toSnakeCaseCache[camelCase] = result; - return result; - } - - /// Capitalize first letter of a word - String _capitalize(String word) { - if (word.isEmpty) return word; - return word[0].toUpperCase() + word.substring(1).toLowerCase(); - } - - /// Convert a single field name from snake_case to camelCase - String fieldToCamelCase(String snakeCase) { - return _toCamelCase(snakeCase); - } - - /// Convert a single field name from camelCase to snake_case - String fieldToSnakeCase(String camelCase) { - return _toSnakeCase(camelCase); - } - - /// Get all cached transformations for debugging - Map getCacheInfo() { - return { - 'toCamelCacheSize': _toCamelCaseCache.length, - 'toSnakeCacheSize': _toSnakeCaseCache.length, - 'specialMappingsCount': _specialApiToClient.length, - }; - } - - /// Clear transformation caches - void clearCache() { - _toCamelCaseCache.clear(); - _toSnakeCaseCache.clear(); - DebugLogger.validation('Cleared transformation caches'); - } - - /// Add custom field mapping - void addCustomMapping(String apiField, String clientField) { - _specialApiToClient[apiField] = clientField; - _specialClientToApi[clientField] = apiField; - - // Clear relevant cache entries - _toCamelCaseCache.remove(apiField); - _toSnakeCaseCache.remove(clientField); - - DebugLogger.validation('Added custom mapping: $apiField <-> $clientField'); - } - - /// Validate that field transformations are reversible - bool validateTransformations() { - final errors = []; - - // Test special mappings - for (final entry in _specialApiToClient.entries) { - final apiField = entry.key; - final clientField = entry.value; - - // Test API -> Client -> API - final backToApi = _toSnakeCase(clientField); - if (backToApi != apiField) { - errors.add( - '$apiField -> $clientField -> $backToApi (should be $apiField)', - ); - } - - // Test Client -> API -> Client - final backToClient = _toCamelCase(apiField); - if (backToClient != clientField) { - errors.add( - '$clientField -> $apiField -> $backToClient (should be $clientField)', - ); - } - } - - if (errors.isNotEmpty) { - DebugLogger.error('Transformation validation errors:'); - for (final error in errors) { - DebugLogger.error(' $error'); - } - return false; - } - - DebugLogger.validation('All transformations validated successfully'); - return true; - } -} diff --git a/lib/core/validation/schema_registry.dart b/lib/core/validation/schema_registry.dart deleted file mode 100644 index be48a0f..0000000 --- a/lib/core/validation/schema_registry.dart +++ /dev/null @@ -1,368 +0,0 @@ -import 'dart:async'; -import 'dart:convert'; -import 'package:flutter/services.dart'; -import '../utils/debug_logger.dart'; - -/// Registry for OpenAPI schemas -/// Loads and provides access to request/response schemas for validation -class SchemaRegistry { - static final SchemaRegistry _instance = SchemaRegistry._internal(); - factory SchemaRegistry() => _instance; - SchemaRegistry._internal(); - - Map? _openApiSpec; - final Map> _requestSchemaCache = {}; - final Map> _responseSchemaCache = {}; - - bool get isLoaded => _openApiSpec != null; - - /// Load schemas from OpenAPI specification - Future loadSchemas() async { - try { - DebugLogger.validation('Loading OpenAPI specification...'); - - // Try to load from assets first, then from file system as fallback - String openApiContent; - try { - openApiContent = await rootBundle.loadString('assets/openapi.json'); - } catch (e) { - DebugLogger.warning( - 'Could not load from assets, trying file system...', - ); - // Fallback - in a real app you might load from network or local file - throw Exception('OpenAPI specification not found in assets'); - } - - _openApiSpec = jsonDecode(openApiContent) as Map; - - DebugLogger.validation( - 'Successfully loaded OpenAPI spec with ${_getPaths().length} paths', - ); - - // Pre-process and cache commonly used schemas - await _buildSchemaCache(); - } catch (e) { - DebugLogger.error('Failed to load schemas', e); - rethrow; - } - } - - /// Get request schema for endpoint and method - Map? getRequestSchema(String endpoint, String method) { - if (!isLoaded) return null; - - final cacheKey = '${method.toUpperCase()}:$endpoint:request'; - if (_requestSchemaCache.containsKey(cacheKey)) { - return _requestSchemaCache[cacheKey]; - } - - try { - final pathItem = _findPathItem(endpoint); - if (pathItem == null) return null; - - final operation = pathItem[method.toLowerCase()] as Map?; - if (operation == null) return null; - - final requestBody = operation['requestBody'] as Map?; - if (requestBody == null) return null; - - final content = requestBody['content'] as Map?; - if (content == null) return null; - - // Try to find JSON content type - final jsonContent = - content['application/json'] as Map? ?? - content.values.first as Map?; - - if (jsonContent == null) return null; - - final schema = _resolveSchema( - jsonContent['schema'] as Map?, - ); - - if (schema != null) { - _requestSchemaCache[cacheKey] = schema; - } - - return schema; - } catch (e) { - DebugLogger.error( - 'Error getting request schema for $method $endpoint', - e, - ); - return null; - } - } - - /// Get response schema for endpoint, method, and status code - Map? getResponseSchema( - String endpoint, - String method, - int? statusCode, - ) { - if (!isLoaded) return null; - - final code = statusCode?.toString() ?? '200'; - final cacheKey = '${method.toUpperCase()}:$endpoint:response:$code'; - - if (_responseSchemaCache.containsKey(cacheKey)) { - return _responseSchemaCache[cacheKey]; - } - - try { - final pathItem = _findPathItem(endpoint); - if (pathItem == null) return null; - - final operation = pathItem[method.toLowerCase()] as Map?; - if (operation == null) return null; - - final responses = operation['responses'] as Map?; - if (responses == null) return null; - - // Try to find the specific status code, or fall back to 'default' or '200' - final response = - responses[code] as Map? ?? - responses['default'] as Map? ?? - responses['200'] as Map?; - - if (response == null) return null; - - final content = response['content'] as Map?; - if (content == null) return null; - - // Try to find JSON content type - final jsonContent = - content['application/json'] as Map? ?? - content.values.first as Map?; - - if (jsonContent == null) return null; - - final schema = _resolveSchema( - jsonContent['schema'] as Map?, - ); - - if (schema != null) { - _responseSchemaCache[cacheKey] = schema; - } - - return schema; - } catch (e) { - DebugLogger.error( - 'Error getting response schema for $method $endpoint ($code)', - e, - ); - return null; - } - } - - /// Find path item that matches the given endpoint - Map? _findPathItem(String endpoint) { - final paths = _getPaths(); - - // Try exact match first - if (paths.containsKey(endpoint)) { - return paths[endpoint] as Map?; - } - - // Try to find parameterized routes - for (final pathPattern in paths.keys) { - if (_matchesPathPattern(endpoint, pathPattern)) { - return paths[pathPattern] as Map?; - } - } - - return null; - } - - /// Check if endpoint matches a path pattern with parameters - bool _matchesPathPattern(String endpoint, String pattern) { - // Convert OpenAPI path parameters {id} to regex - final regexPattern = pattern.replaceAllMapped( - RegExp(r'\{([^}]+)\}'), - (match) => r'([^/]+)', - ); - - final regex = RegExp('^$regexPattern\$'); - return regex.hasMatch(endpoint); - } - - /// Get paths from OpenAPI spec - Map _getPaths() { - return _openApiSpec?['paths'] as Map? ?? {}; - } - - /// Resolve schema references ($ref) - Map? _resolveSchema(Map? schema) { - if (schema == null) return null; - - // Handle $ref - final ref = schema['\$ref'] as String?; - if (ref != null) { - return _resolveReference(ref); - } - - // Handle allOf, oneOf, anyOf - if (schema.containsKey('allOf')) { - return _mergeAllOfSchemas(schema['allOf'] as List); - } - - if (schema.containsKey('oneOf') || schema.containsKey('anyOf')) { - // For now, just take the first schema in oneOf/anyOf - final schemas = (schema['oneOf'] ?? schema['anyOf']) as List; - if (schemas.isNotEmpty) { - return _resolveSchema(schemas.first as Map?); - } - } - - // Recursively resolve nested schemas - final resolved = Map.from(schema); - - if (resolved.containsKey('properties')) { - final properties = resolved['properties'] as Map; - final resolvedProperties = {}; - - for (final entry in properties.entries) { - resolvedProperties[entry.key] = _resolveSchema( - entry.value as Map?, - ); - } - - resolved['properties'] = resolvedProperties; - } - - if (resolved.containsKey('items')) { - resolved['items'] = _resolveSchema( - resolved['items'] as Map?, - ); - } - - return resolved; - } - - /// Resolve $ref reference - Map? _resolveReference(String ref) { - if (!ref.startsWith('#/')) { - DebugLogger.warning('External references not supported: $ref'); - return null; - } - - final path = ref.substring(2).split('/'); - dynamic current = _openApiSpec; - - for (final segment in path) { - if (current is Map && current.containsKey(segment)) { - current = current[segment]; - } else { - DebugLogger.warning('Could not resolve reference: $ref'); - return null; - } - } - - return _resolveSchema(current as Map?); - } - - /// Merge allOf schemas - Map _mergeAllOfSchemas(List schemas) { - final merged = {}; - final mergedProperties = {}; - final mergedRequired = []; - - for (final schema in schemas) { - final resolvedSchema = _resolveSchema(schema as Map?); - if (resolvedSchema == null) continue; - - // Merge top-level properties - merged.addAll(resolvedSchema); - - // Merge properties - if (resolvedSchema.containsKey('properties')) { - mergedProperties.addAll( - resolvedSchema['properties'] as Map, - ); - } - - // Merge required fields - if (resolvedSchema.containsKey('required')) { - mergedRequired.addAll( - (resolvedSchema['required'] as List).cast(), - ); - } - } - - if (mergedProperties.isNotEmpty) { - merged['properties'] = mergedProperties; - } - - if (mergedRequired.isNotEmpty) { - merged['required'] = mergedRequired; - } - - return merged; - } - - /// Pre-build cache of commonly used schemas - Future _buildSchemaCache() async { - if (!isLoaded) return; - - final paths = _getPaths(); - int cachedCount = 0; - - for (final pathEntry in paths.entries) { - final path = pathEntry.key; - final pathItem = pathEntry.value as Map; - - for (final method in ['get', 'post', 'put', 'delete', 'patch']) { - if (pathItem.containsKey(method)) { - // Cache request schema - getRequestSchema(path, method); - - // Cache common response schemas - getResponseSchema(path, method, 200); - getResponseSchema(path, method, 201); - getResponseSchema(path, method, 400); - getResponseSchema(path, method, 401); - getResponseSchema(path, method, 403); - getResponseSchema(path, method, 404); - getResponseSchema(path, method, 422); - getResponseSchema(path, method, 500); - - cachedCount++; - } - } - } - - DebugLogger.validation('Pre-cached schemas for $cachedCount operations'); - } - - /// Get all available endpoints - List getAvailableEndpoints() { - if (!isLoaded) return []; - return _getPaths().keys.toList(); - } - - /// Get available methods for an endpoint - List getAvailableMethods(String endpoint) { - final pathItem = _findPathItem(endpoint); - if (pathItem == null) return []; - - return pathItem.keys - .where( - (key) => [ - 'get', - 'post', - 'put', - 'delete', - 'patch', - 'head', - 'options', - ].contains(key), - ) - .toList(); - } - - /// Clear all caches - void clearCache() { - _requestSchemaCache.clear(); - _responseSchemaCache.clear(); - } -} diff --git a/lib/core/validation/validation_interceptor.dart b/lib/core/validation/validation_interceptor.dart deleted file mode 100644 index 266aa25..0000000 --- a/lib/core/validation/validation_interceptor.dart +++ /dev/null @@ -1,217 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart'; -import 'api_validator.dart'; -import 'validation_result.dart'; -import '../utils/debug_logger.dart'; - -/// Dio interceptor for automatic API validation -/// Validates requests and responses against OpenAPI schemas -class ValidationInterceptor extends Interceptor { - final ApiValidator _validator = ApiValidator(); - final bool enableRequestValidation; - final bool enableResponseValidation; - final bool throwOnValidationError; - final bool logValidationResults; - - ValidationInterceptor({ - this.enableRequestValidation = true, - this.enableResponseValidation = true, - this.throwOnValidationError = false, - this.logValidationResults = true, - }); - - /// Initialize the validator - Future initialize() async { - await _validator.initialize(); - } - - @override - void onRequest(RequestOptions options, RequestInterceptorHandler handler) { - if (enableRequestValidation && options.data != null) { - try { - final result = _validator.validateRequest( - options.data, - options.path, - method: options.method, - ); - - if (logValidationResults) { - _logValidationResult(result, 'REQUEST', options.path, options.method); - } - - if (!result.isValid && throwOnValidationError) { - throw ValidationException(result); - } - - // Transform data if validation succeeded - // Temporarily disabled to preserve background_tasks and session_id parameters - // if (result.isValid && options.data is Map) { - // options.data = _validator.transformForApi( - // options.data as Map, - // ); - // } - } catch (e) { - if (e is ValidationException) { - handler.reject( - DioException( - requestOptions: options, - error: e, - type: DioExceptionType.unknown, - message: 'Request validation failed: ${e.result.message}', - ), - ); - return; - } else { - DebugLogger.error('Request validation error', e); - } - } - } - - handler.next(options); - } - - @override - void onResponse(Response response, ResponseInterceptorHandler handler) { - if (enableResponseValidation && response.data != null) { - try { - final result = _validator.validateResponse( - response.data, - response.requestOptions.path, - method: response.requestOptions.method, - statusCode: response.statusCode, - ); - - if (logValidationResults) { - _logValidationResult( - result, - 'RESPONSE', - response.requestOptions.path, - response.requestOptions.method, - statusCode: response.statusCode, - ); - } - - if (!result.isValid && throwOnValidationError) { - throw ValidationException(result); - } - - // Transform data if validation succeeded and data is available - if (result.isValid && result.data != null) { - response.data = result.data; - } else if (result.isValid && response.data is Map) { - response.data = _validator.transformFromApi( - response.data as Map, - ); - } - - // Store validation result in response for debugging - if (kDebugMode) { - response.extra['validationResult'] = result; - } - } catch (e) { - if (e is ValidationException) { - handler.reject( - DioException( - requestOptions: response.requestOptions, - response: response, - error: e, - type: DioExceptionType.unknown, - message: 'Response validation failed: ${e.result.message}', - ), - ); - return; - } else { - DebugLogger.error('Response validation error', e); - } - } - } - - handler.next(response); - } - - @override - void onError(DioException err, ErrorInterceptorHandler handler) { - // Try to validate error responses too - if (enableResponseValidation && err.response?.data != null) { - try { - final result = _validator.validateResponse( - err.response!.data, - err.requestOptions.path, - method: err.requestOptions.method, - statusCode: err.response!.statusCode, - ); - - if (logValidationResults) { - _logValidationResult( - result, - 'ERROR_RESPONSE', - err.requestOptions.path, - err.requestOptions.method, - statusCode: err.response!.statusCode, - ); - } - - // Transform error response data - if (result.isValid && result.data != null) { - err.response!.data = result.data; - } else if (result.isValid && - err.response!.data is Map) { - err.response!.data = _validator.transformFromApi( - err.response!.data as Map, - ); - } - - // Store validation result for debugging - if (kDebugMode) { - err.response!.extra['validationResult'] = result; - } - } catch (e) { - DebugLogger.error('Error response validation failed', e); - } - } - - handler.next(err); - } - - /// Log validation results in a structured format - void _logValidationResult( - ValidationResult result, - String type, - String path, - String method, { - int? statusCode, - }) { - if (!logValidationResults) return; - - final statusText = statusCode != null ? ' ($statusCode)' : ''; - final icon = result.isValid ? '✅' : '❌'; - - DebugLogger.validation( - '$icon Validation $type: ${method.toUpperCase()} $path$statusText - ${result.status.name}', - ); - - if (result.hasErrors) { - DebugLogger.error(' Errors: ${result.errors.join(', ')}'); - } - - if (result.hasWarnings) { - DebugLogger.warning(' Warnings: ${result.warnings.join(', ')}'); - } - - if (result.message.isNotEmpty && - result.status != ValidationStatus.success) { - DebugLogger.info(' Message: ${result.message}'); - } - } - - /// Get validation statistics - Map getStats() { - return { - 'requestValidationEnabled': enableRequestValidation, - 'responseValidationEnabled': enableResponseValidation, - 'throwOnError': throwOnValidationError, - 'loggingEnabled': logValidationResults, - 'validatorInitialized': _validator.isInitialized, - }; - } -} diff --git a/lib/core/validation/validation_result.dart b/lib/core/validation/validation_result.dart deleted file mode 100644 index 36aed1e..0000000 --- a/lib/core/validation/validation_result.dart +++ /dev/null @@ -1,100 +0,0 @@ -/// Result of API validation operations -class ValidationResult { - const ValidationResult._({ - required this.isValid, - required this.status, - required this.message, - this.errors = const [], - this.warnings = const [], - this.data, - }); - - const ValidationResult.success( - String message, { - dynamic data, - List warnings = const [], - }) : this._( - isValid: true, - status: ValidationStatus.success, - message: message, - warnings: warnings, - data: data, - ); - - const ValidationResult.warning( - String message, { - List warnings = const [], - dynamic data, - }) : this._( - isValid: true, - status: ValidationStatus.warning, - message: message, - warnings: warnings, - data: data, - ); - - const ValidationResult.error( - String message, { - List errors = const [], - List warnings = const [], - }) : this._( - isValid: false, - status: ValidationStatus.error, - message: message, - errors: errors, - warnings: warnings, - ); - - final bool isValid; - final ValidationStatus status; - final String message; - final List errors; - final List warnings; - final dynamic data; - - bool get hasWarnings => warnings.isNotEmpty; - bool get hasErrors => errors.isNotEmpty; - - @override - String toString() { - final buffer = StringBuffer(); - buffer.write('ValidationResult('); - buffer.write('status: $status, '); - buffer.write('message: $message'); - - if (hasErrors) { - buffer.write(', errors: ${errors.length}'); - } - - if (hasWarnings) { - buffer.write(', warnings: ${warnings.length}'); - } - - buffer.write(')'); - return buffer.toString(); - } - - /// Convert to a detailed map for logging/debugging - Map toMap() { - return { - 'isValid': isValid, - 'status': status.name, - 'message': message, - 'errors': errors, - 'warnings': warnings, - 'hasData': data != null, - }; - } -} - -enum ValidationStatus { success, warning, error } - -/// Exception thrown when validation fails critically -class ValidationException implements Exception { - const ValidationException(this.result); - - final ValidationResult result; - - @override - String toString() => 'ValidationException: ${result.message}'; -} diff --git a/pubspec.yaml b/pubspec.yaml index e8e2cb7..dec5d86 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -80,7 +80,6 @@ flutter: assets: - assets/icons/ - - assets/openapi.json flutter_native_splash: # Background color (Conduit dark theme)