diff --git a/agent/app/api/v2/disk.go b/agent/app/api/v2/disk.go index e1f26daa0..b0a28d096 100644 --- a/agent/app/api/v2/disk.go +++ b/agent/app/api/v2/disk.go @@ -10,7 +10,7 @@ import ( // @Summary Get complete disk information // @Description Get information about all disks including partitioned and unpartitioned disks // @Produce json -// @Success 200 {object} dto.CompleteDiskInfo +// @Success 200 {object} response.CompleteDiskInfo // @Security ApiKeyAuth // @Security Timestamp // @Router /disks [get] diff --git a/agent/app/api/v2/group.go b/agent/app/api/v2/group.go index a40f5dec3..45c54c850 100644 --- a/agent/app/api/v2/group.go +++ b/agent/app/api/v2/group.go @@ -13,7 +13,7 @@ import ( // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /agent/groups [post] +// @Router /groups [post] // @x-panel-log {"bodyKeys":["name","type"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"创建组 [name][type]","formatEN":"create group [name][type]"} func (b *BaseApi) CreateGroup(c *gin.Context) { var req dto.GroupCreate @@ -35,7 +35,7 @@ func (b *BaseApi) CreateGroup(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /agent/groups/del [post] +// @Router /groups/del [post] // @x-panel-log {"bodyKeys":["id"],"paramKeys":[],"BeforeFunctions":[{"input_column":"id","input_value":"id","isList":false,"db":"groups","output_column":"name","output_value":"name"},{"input_column":"id","input_value":"id","isList":false,"db":"groups","output_column":"type","output_value":"type"}],"formatZH":"删除组 [type][name]","formatEN":"delete group [type][name]"} func (b *BaseApi) DeleteGroup(c *gin.Context) { var req dto.OperateByID @@ -57,7 +57,7 @@ func (b *BaseApi) DeleteGroup(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /agent/groups/update [post] +// @Router /groups/update [post] // @x-panel-log {"bodyKeys":["name","type"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"更新组 [name][type]","formatEN":"update group [name][type]"} func (b *BaseApi) UpdateGroup(c *gin.Context) { var req dto.GroupUpdate @@ -79,7 +79,7 @@ func (b *BaseApi) UpdateGroup(c *gin.Context) { // @Success 200 {array} dto.OperateByType // @Security ApiKeyAuth // @Security Timestamp -// @Router /agent/groups/search [post] +// @Router /groups/search [post] func (b *BaseApi) ListGroup(c *gin.Context) { var req dto.OperateByType if err := helper.CheckBindAndValidate(&req, c); err != nil { diff --git a/agent/app/api/v2/runtime.go b/agent/app/api/v2/runtime.go index 406b3a68d..03c8bef60 100644 --- a/agent/app/api/v2/runtime.go +++ b/agent/app/api/v2/runtime.go @@ -497,7 +497,7 @@ func (b *BaseApi) OperateSupervisorProcessFile(c *gin.Context) { // @Tags Runtime // @Summary Update PHP container config // @Accept json -// @Param request body request.PHPContainerUpdate true "request" +// @Param request body request.PHPContainerConfig true "request" // @Success 200 // @Security ApiKeyAuth // @Security Timestamp @@ -518,7 +518,7 @@ func (b *BaseApi) UpdatePHPContainer(c *gin.Context) { // @Summary Get PHP container config // @Accept json // @Param id path integer true "request" -// @Success 200 {object} response.PHPContainerConfig +// @Success 200 {object} request.PHPContainerConfig // @Security ApiKeyAuth // @Security Timestamp // @Router /runtimes/php/container/:id [get] @@ -539,7 +539,7 @@ func (b *BaseApi) GetPHPContainerConfig(c *gin.Context) { // @Tags Runtime // @Summary Update runtime remark // @Accept json -// @Param request body request.RuntimeRemarkUpdate true "request" +// @Param request body request.RuntimeRemark true "request" // @Success 200 // @Security ApiKeyAuth // @Security Timestamp diff --git a/core/app/api/v2/script_library.go b/core/app/api/v2/script_library.go index e33f3fbdb..a2bda3697 100644 --- a/core/app/api/v2/script_library.go +++ b/core/app/api/v2/script_library.go @@ -26,7 +26,7 @@ import ( // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /script [post] +// @Router /core/script [post] // @x-panel-log {"bodyKeys":["name"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"添加脚本库脚本 [name]","formatEN":"add script [name]"} func (b *BaseApi) CreateScript(c *gin.Context) { var req dto.ScriptOperate @@ -48,7 +48,7 @@ func (b *BaseApi) CreateScript(c *gin.Context) { // @Success 200 {object} dto.PageResult // @Security ApiKeyAuth // @Security Timestamp -// @Router /script/search [post] +// @Router /core/script/search [post] func (b *BaseApi) SearchScript(c *gin.Context) { var req dto.SearchPageWithGroup if err := helper.CheckBindAndValidate(&req, c); err != nil { @@ -74,7 +74,7 @@ func (b *BaseApi) SearchScript(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /script/del [post] +// @Router /core/script/del [post] // @x-panel-log {"bodyKeys":["ids"],"paramKeys":[],"BeforeFunctions":[{"input_column":"id","input_value":"ids","isList":true,"db":"script_librarys","output_column":"name","output_value":"names"}],"formatZH":"删除脚本库脚本 [names]","formatEN":"delete script [names]"} func (b *BaseApi) DeleteScript(c *gin.Context) { var req dto.OperateByIDs @@ -96,7 +96,7 @@ func (b *BaseApi) DeleteScript(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /script/sync [post] +// @Router /core/script/sync [post] // @x-panel-log {"bodyKeys":[],"paramKeys":[],"BeforeFunctions":[],"formatZH":"同步脚本库脚本","formatEN":"sync scripts"} func (b *BaseApi) SyncScript(c *gin.Context) { var req dto.OperateByTaskID @@ -117,7 +117,7 @@ func (b *BaseApi) SyncScript(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /script/update [post] +// @Router /core/script/update [post] // @x-panel-log {"bodyKeys":["id"],"paramKeys":[],"BeforeFunctions":[{"input_column":"id","input_value":"id","isList":false,"db":"cronjobs","output_column":"name","output_value":"name"}],"formatZH":"更新脚本库脚本 [name]","formatEN":"update script [name]"} func (b *BaseApi) UpdateScript(c *gin.Context) { var req dto.ScriptOperate diff --git a/core/app/api/v2/setting.go b/core/app/api/v2/setting.go index 45251affb..448e418c2 100644 --- a/core/app/api/v2/setting.go +++ b/core/app/api/v2/setting.go @@ -402,7 +402,7 @@ func (b *BaseApi) ReloadSSL(c *gin.Context) { // @Success 200 {string} key // @Security ApiKeyAuth // @Security Timestamp -// @Router /settings/api/config/generate/key [post] +// @Router /core/settings/api/config/generate/key [post] // @x-panel-log {"bodyKeys":[],"paramKeys":[],"BeforeFunctions":[],"formatZH":"生成 API 接口密钥","formatEN":"generate api key"} func (b *BaseApi) GenerateApiKey(c *gin.Context) { panelToken := c.GetHeader("1Panel-Token") @@ -425,7 +425,7 @@ func (b *BaseApi) GenerateApiKey(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /settings/api/config/update [post] +// @Router /core/settings/api/config/update [post] // @x-panel-log {"bodyKeys":["ipWhiteList"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"更新 API 接口配置 => IP 白名单: [ipWhiteList]","formatEN":"update api config => IP White List: [ipWhiteList]"} func (b *BaseApi) UpdateApiConfig(c *gin.Context) { panelToken := c.GetHeader("1Panel-Token") @@ -452,7 +452,7 @@ func (b *BaseApi) UpdateApiConfig(c *gin.Context) { // @Success 200 // @Security ApiKeyAuth // @Security Timestamp -// @Router /settings/apps/store/update [post] +// @Router /core/settings/apps/store/update [post] func (b *BaseApi) UpdateAppstoreConfig(c *gin.Context) { var req dto.AppstoreUpdate if err := helper.CheckBindAndValidate(&req, c); err != nil { @@ -471,7 +471,7 @@ func (b *BaseApi) UpdateAppstoreConfig(c *gin.Context) { // @Success 200 {object} dto.AppstoreConfig // @Security ApiKeyAuth // @Security Timestamp -// @Router /settings/apps/store/config [get] +// @Router /core/settings/apps/store/config [get] func (b *BaseApi) GetAppstoreConfig(c *gin.Context) { res, err := settingService.GetAppstoreConfig() if err != nil { diff --git a/core/cmd/server/docs/docs.go b/core/cmd/server/docs/docs.go index e8abcfd5a..4e12691d2 100644 --- a/core/cmd/server/docs/docs.go +++ b/core/cmd/server/docs/docs.go @@ -18,198 +18,6 @@ const docTemplate = `{ "host": "localhost", "basePath": "/api/v2", "paths": { - "/agent/groups": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GroupCreate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Create group", - "tags": [ - "System Group" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "name", - "type" - ], - "formatEN": "create group [name][type]", - "formatZH": "创建组 [name][type]", - "paramKeys": [] - } - } - }, - "/agent/groups/del": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.OperateByID" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Delete group", - "tags": [ - "System Group" - ], - "x-panel-log": { - "BeforeFunctions": [ - { - "db": "groups", - "input_column": "id", - "input_value": "id", - "isList": false, - "output_column": "name", - "output_value": "name" - }, - { - "db": "groups", - "input_column": "id", - "input_value": "id", - "isList": false, - "output_column": "type", - "output_value": "type" - } - ], - "bodyKeys": [ - "id" - ], - "formatEN": "delete group [type][name]", - "formatZH": "删除组 [type][name]", - "paramKeys": [] - } - } - }, - "/agent/groups/search": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GroupSearch" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/dto.OperateByType" - }, - "type": "array" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "List groups", - "tags": [ - "System Group" - ] - } - }, - "/agent/groups/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GroupUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update group", - "tags": [ - "System Group" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "name", - "type" - ], - "formatEN": "update group [name][type]", - "formatZH": "更新组 [name][type]", - "paramKeys": [] - } - } - }, "/ai/domain/bind": { "post": { "consumes": [ @@ -748,7 +556,49 @@ const docTemplate = `{ ] } }, - "/apps/ignored": { + "/apps/ignored/cancel": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.ReqWithID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Cancel Ignore Upgrade App", + "tags": [ + "App" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "Cancel ignore application upgrade", + "formatZH": "取消忽略应用升级", + "paramKeys": [] + } + } + }, + "/apps/ignored/detail": { "get": { "consumes": [ "application/json" @@ -758,7 +608,7 @@ const docTemplate = `{ "description": "OK", "schema": { "items": { - "$ref": "#/definitions/response.IgnoredApp" + "$ref": "#/definitions/model.AppIgnoreUpgrade" }, "type": "array" } @@ -772,7 +622,7 @@ const docTemplate = `{ "Timestamp": [] } ], - "summary": "Get Ignore App", + "summary": "List Upgrade Ignored App", "tags": [ "App" ] @@ -1035,7 +885,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/request.AppInstalledIgnoreUpgrade" + "$ref": "#/definitions/request.AppIgnoreUpgradeReq" } } ], @@ -1052,21 +902,55 @@ const docTemplate = `{ "Timestamp": [] } ], - "summary": "ignore App Update", + "summary": "Ignore Upgrade App", "tags": [ "App" ], "x-panel-log": { "BeforeFunctions": [], - "bodyKeys": [ - "installId" - ], - "formatEN": "Application param update [installId]", - "formatZH": "忽略应用 [installId] 版本升级", + "bodyKeys": [], + "formatEN": "Ignore application upgrade", + "formatZH": "忽略应用升级", "paramKeys": [] } } }, + "/apps/installed/info/:appInstallId": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "App install id", + "in": "path", + "name": "appInstallId", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.AppInstallInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get app install info", + "tags": [ + "App" + ] + } + }, "/apps/installed/list": { "get": { "consumes": [ @@ -1513,65 +1397,6 @@ const docTemplate = `{ ] } }, - "/apps/store/config": { - "get": { - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.AppstoreConfig" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get appstore config", - "tags": [ - "App" - ] - } - }, - "/apps/store/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.AppstoreUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update appstore config", - "tags": [ - "App" - ] - } - }, "/apps/sync/local": { "post": { "responses": { @@ -1628,6 +1453,41 @@ const docTemplate = `{ } } }, + "/backup/record/description/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.UpdateDescription" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update backup record description", + "tags": [ + "Backup Account" + ] + } + }, "/backup/record/download": { "post": { "consumes": [ @@ -2239,6 +2099,50 @@ const docTemplate = `{ } } }, + "/backups/upload": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.UploadForRecover" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Upload file for recover", + "tags": [ + "Backup Account" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "filePath" + ], + "formatEN": "upload backup file [filePath]", + "formatZH": "上传备份文件 [filePath]", + "paramKeys": [] + } + } + }, "/buckets": { "post": { "consumes": [ @@ -3152,10 +3056,7 @@ const docTemplate = `{ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.ContainerPruneReport" - } + "description": "OK" } }, "security": [ @@ -3239,7 +3140,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.SearchWithPage" + "$ref": "#/definitions/dto.PageImage" } } ], @@ -3474,7 +3375,7 @@ const docTemplate = `{ "description": "OK", "schema": { "items": { - "type": "string" + "$ref": "#/definitions/dto.ContainerOptions" }, "type": "array" } @@ -3494,6 +3395,39 @@ const docTemplate = `{ ] } }, + "/containers/list/byimage": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.ContainerOptions" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "List containers by image", + "tags": [ + "Container" + ] + } + }, "/containers/list/stats": { "get": { "responses": { @@ -3783,10 +3717,7 @@ const docTemplate = `{ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.ContainerPruneReport" - } + "description": "OK" } }, "security": [ @@ -3944,7 +3875,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.ImageRepoDelete" + "$ref": "#/definitions/dto.OperateByID" } } ], @@ -3973,17 +3904,17 @@ const docTemplate = `{ { "db": "image_repos", "input_column": "id", - "input_value": "ids", - "isList": true, + "input_value": "id", + "isList": false, "output_column": "name", - "output_value": "names" + "output_value": "name" } ], "bodyKeys": [ - "ids" + "id" ], - "formatEN": "delete image repo [names]", - "formatZH": "删除镜像仓库 [names]", + "formatEN": "delete image repo [name]", + "formatZH": "删除镜像仓库 [name]", "paramKeys": [] } } @@ -4215,7 +4146,7 @@ const docTemplate = `{ "in": "path", "name": "id", "required": true, - "type": "integer" + "type": "string" } ], "responses": { @@ -4579,6 +4510,50 @@ const docTemplate = `{ } } }, + "/containers/users": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperationWithName" + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load container users", + "tags": [ + "Container" + ] + } + }, "/containers/volume": { "get": { "consumes": [ @@ -4739,51 +4714,6 @@ const docTemplate = `{ ] } }, - "/core/app/launcher/show": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SettingUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update app Launcher", - "tags": [ - "App Launcher" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "key", - "value" - ], - "formatEN": "app launcher [key] =\u003e show: [value]", - "formatZH": "首页应用 [key] =\u003e 显示:[value]", - "paramKeys": [] - } - } - }, "/core/auth/captcha": { "get": { "responses": { @@ -6110,6 +6040,373 @@ const docTemplate = `{ ] } }, + "/core/script": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ScriptOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Add script", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name" + ], + "formatEN": "add script [name]", + "formatZH": "添加脚本库脚本 [name]", + "paramKeys": [] + } + } + }, + "/core/script/del": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByIDs" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete script", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "script_librarys", + "input_column": "id", + "input_value": "ids", + "isList": true, + "output_column": "name", + "output_value": "names" + } + ], + "bodyKeys": [ + "ids" + ], + "formatEN": "delete script [names]", + "formatZH": "删除脚本库脚本 [names]", + "paramKeys": [] + } + } + }, + "/core/script/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchPageWithGroup" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.PageResult" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Page script", + "tags": [ + "ScriptLibrary" + ] + } + }, + "/core/script/sync": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByTaskID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Sync script from remote", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "sync scripts", + "formatZH": "同步脚本库脚本", + "paramKeys": [] + } + } + }, + "/core/script/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ScriptOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update script", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "cronjobs", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "name", + "output_value": "name" + } + ], + "bodyKeys": [ + "id" + ], + "formatEN": "update script [name]", + "formatZH": "更新脚本库脚本 [name]", + "paramKeys": [] + } + } + }, + "/core/settings/api/config/generate/key": { + "post": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "generate api key", + "tags": [ + "System Setting" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "generate api key", + "formatZH": "生成 API 接口密钥", + "paramKeys": [] + } + } + }, + "/core/settings/api/config/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ApiInterfaceConfig" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update api config", + "tags": [ + "System Setting" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "ipWhiteList" + ], + "formatEN": "update api config =\u003e IP White List: [ipWhiteList]", + "formatZH": "更新 API 接口配置 =\u003e IP 白名单: [ipWhiteList]", + "paramKeys": [] + } + } + }, + "/core/settings/apps/store/config": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.AppstoreConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get appstore config", + "tags": [ + "App" + ] + } + }, + "/core/settings/apps/store/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.AppstoreUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update appstore config", + "tags": [ + "App" + ] + } + }, "/core/settings/bind/update": { "post": { "consumes": [ @@ -6780,25 +7077,11 @@ const docTemplate = `{ }, "/core/settings/upgrade": { "get": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.Upgrade" - } - } - ], "responses": { "200": { "description": "OK", "schema": { - "type": "string" + "$ref": "#/definitions/dto.UpgradeInfo" } } }, @@ -6810,7 +7093,7 @@ const docTemplate = `{ "Timestamp": [] } ], - "summary": "Load release notes by version", + "summary": "Load upgrade info", "tags": [ "System Setting" ] @@ -6858,6 +7141,71 @@ const docTemplate = `{ } } }, + "/core/settings/upgrade/notes": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.Upgrade" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load release notes by version", + "tags": [ + "System Setting" + ] + } + }, + "/core/settings/upgrade/releases": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.ReleasesNotes" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load upgrade notes", + "tags": [ + "System Setting" + ] + } + }, "/cronjobs": { "post": { "consumes": [ @@ -6870,7 +7218,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.CronjobCreate" + "$ref": "#/definitions/dto.CronjobOperate" } } ], @@ -6956,7 +7304,7 @@ const docTemplate = `{ } } }, - "/cronjobs/download": { + "/cronjobs/export": { "post": { "consumes": [ "application/json" @@ -6968,7 +7316,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.CronjobDownload" + "$ref": "#/definitions/dto.OperateByIDs" } } ], @@ -6985,26 +7333,61 @@ const docTemplate = `{ "Timestamp": [] } ], - "summary": "Download cronjob records", + "summary": "Export cronjob list", + "tags": [ + "Cronjob" + ] + } + }, + "/cronjobs/group/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ChangeGroup" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update cronjob group", "tags": [ "Cronjob" ], "x-panel-log": { "BeforeFunctions": [ { - "db": "job_records", + "db": "cronjobs", "input_column": "id", - "input_value": "recordID", + "input_value": "id", "isList": false, - "output_column": "file", - "output_value": "file" + "output_column": "name", + "output_value": "name" } ], "bodyKeys": [ - "recordID" + "id" ], - "formatEN": "download the cronjob record [file]", - "formatZH": "下载计划任务记录 [file]", + "formatEN": "update cronjob group [name]", + "formatZH": "更新计划任务分组 [name]", "paramKeys": [] } } @@ -7062,6 +7445,76 @@ const docTemplate = `{ } } }, + "/cronjobs/import": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.CronjobImport" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Import cronjob list", + "tags": [ + "Cronjob" + ] + } + }, + "/cronjobs/load/info": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load cronjob info", + "tags": [ + "Cronjob" + ] + } + }, "/cronjobs/next": { "post": { "consumes": [ @@ -7188,6 +7641,33 @@ const docTemplate = `{ ] } }, + "/cronjobs/script/options": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.ScriptOptions" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load script options", + "tags": [ + "Cronjob" + ] + } + }, "/cronjobs/search": { "post": { "consumes": [ @@ -7330,7 +7810,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.CronjobUpdate" + "$ref": "#/definitions/dto.CronjobOperate" } } ], @@ -7436,6 +7916,51 @@ const docTemplate = `{ ] } }, + "/dashboard/app/launcher/show": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SettingUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update app Launcher", + "tags": [ + "Dashboard" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "key", + "value" + ], + "formatEN": "app launcher [key] =\u003e show: [value]", + "formatZH": "首页应用 [key] =\u003e 显示:[value]", + "paramKeys": [] + } + } + }, "/dashboard/base/:ioOption/:netOption": { "get": { "consumes": [ @@ -7573,6 +8098,72 @@ const docTemplate = `{ ] } }, + "/dashboard/quick/change": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ChangeQuicks" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update quick jump", + "tags": [ + "Dashboard" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "change quick jump", + "formatZH": "切换快速跳转", + "paramKeys": [] + } + } + }, + "/dashboard/quick/option": { + "post": { + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "Array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load quick jump options", + "tags": [ + "Dashboard" + ] + } + }, "/dashboard/system/restart/:operation": { "post": { "consumes": [ @@ -8864,7 +9455,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.OperationWithName" + "$ref": "#/definitions/dto.LoadRedisStatus" } } ], @@ -9007,7 +9598,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.OperationWithName" + "$ref": "#/definitions/dto.LoadRedisStatus" } } ], @@ -9087,7 +9678,7 @@ const docTemplate = `{ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.OperationWithName" + "$ref": "#/definitions/dto.LoadRedisStatus" } } ], @@ -9348,6 +9939,182 @@ const docTemplate = `{ ] } }, + "/disks": { + "get": { + "description": "Get information about all disks including partitioned and unpartitioned disks", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.CompleteDiskInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get complete disk information", + "tags": [ + "Disk Management" + ] + } + }, + "/disks/mount": { + "post": { + "consumes": [ + "application/json" + ], + "description": "Mount partition to specified mount point", + "parameters": [ + { + "description": "mount request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DiskMountRequest" + } + } + ], + "responses": { + "200": { + "description": "Disk mounted successfully", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Mount disk", + "tags": [ + "Disk Management" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "device", + "mountPoint" + ], + "formatEN": "Mount disk [device] to [mountPoint]", + "formatZH": "挂载磁盘 [device] 到 [mountPoint]", + "paramKeys": [] + } + } + }, + "/disks/partition": { + "post": { + "consumes": [ + "application/json" + ], + "description": "Create partition and format disk with specified filesystem", + "parameters": [ + { + "description": "partition request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DiskPartitionRequest" + } + } + ], + "responses": { + "200": { + "description": "Partition created successfully", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Partition disk", + "tags": [ + "Disk Management" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "device", + "filesystem", + "mountPoint" + ], + "formatEN": "Partition disk [device] with filesystem [filesystem], mount point [mountPoint]", + "formatZH": "对磁盘 [device] 进行分区,文件系统 [filesystem],挂载点 [mountPoint]", + "paramKeys": [] + } + } + }, + "/disks/unmount": { + "post": { + "consumes": [ + "application/json" + ], + "description": "Unmount partition from mount point", + "parameters": [ + { + "description": "unmount request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DiskUnmountRequest" + } + } + ], + "responses": { + "200": { + "description": "Disk unmounted successfully", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Unmount disk", + "tags": [ + "Disk Management" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "device", + "mountPoint" + ], + "formatEN": "Unmount disk [device] from [mountPoint]", + "formatZH": "卸载磁盘 [device] 从 [mountPoint]", + "paramKeys": [] + } + } + }, "/files": { "post": { "consumes": [ @@ -9392,6 +10159,47 @@ const docTemplate = `{ } } }, + "/files/batch/check": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.FilePathsCheck" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/response.ExistFileInfo" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Batch check file exist", + "tags": [ + "File" + ] + } + }, "/files/batch/del": { "post": { "consumes": [ @@ -9774,6 +10582,56 @@ const docTemplate = `{ } } }, + "/files/depth/size": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DirSizeReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/response.DepthDirSizeRes" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Multi file size", + "tags": [ + "File" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "path" + ], + "formatEN": "Multi file size [path]", + "formatZH": "获取目录及其第一层子目录文件夹大小 [path]", + "paramKeys": [] + } + } + }, "/files/download": { "get": { "consumes": [ @@ -10493,10 +11351,11 @@ const docTemplate = `{ "x-panel-log": { "BeforeFunctions": [], "bodyKeys": [ - "path" + "path", + "file" ], - "formatEN": "Upload file [path]", - "formatZH": "上传文件 [path]", + "formatEN": "Upload file [path]/[file]", + "formatZH": "上传文件 [path]/[file]", "paramKeys": [] } } @@ -10588,7 +11447,235 @@ const docTemplate = `{ } } }, - "/host/conffile/update": { + "/groups": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.GroupCreate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create group", + "tags": [ + "System Group" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name", + "type" + ], + "formatEN": "create group [name][type]", + "formatZH": "创建组 [name][type]", + "paramKeys": [] + } + } + }, + "/groups/del": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete group", + "tags": [ + "System Group" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "groups", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "name", + "output_value": "name" + }, + { + "db": "groups", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "type", + "output_value": "type" + } + ], + "bodyKeys": [ + "id" + ], + "formatEN": "delete group [type][name]", + "formatZH": "删除组 [type][name]", + "paramKeys": [] + } + } + }, + "/groups/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.GroupSearch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.OperateByType" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "List groups", + "tags": [ + "System Group" + ] + } + }, + "/groups/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.GroupUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update group", + "tags": [ + "System Group" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name", + "type" + ], + "formatEN": "update group [name][type]", + "formatZH": "更新组 [name][type]", + "paramKeys": [] + } + } + }, + "/hosts/components/{name}": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "Component name to check (e.g., rsync, docker)", + "in": "query", + "name": "name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.ComponentInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Check if a system component exists", + "tags": [ + "Host" + ] + } + }, + "/hosts/conffile/update": { "post": { "consumes": [ "application/json" @@ -10630,589 +11717,6 @@ const docTemplate = `{ } } }, - "/host/ssh/conf": { - "get": { - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH conf", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/generate": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GenerateSSH" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Generate host SSH secret", - "tags": [ - "SSH" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [], - "formatEN": "generate SSH secret", - "formatZH": "生成 SSH 密钥 ", - "paramKeys": [] - } - } - }, - "/host/ssh/log": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SearchSSHLog" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.SSHLog" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH logs", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/operate": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.Operate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Operate SSH", - "tags": [ - "SSH" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operation" - ], - "formatEN": "[operation] SSH", - "formatZH": "[operation] SSH ", - "paramKeys": [] - } - } - }, - "/host/ssh/search": { - "post": { - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.SSHInfo" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH setting info", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/secret": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GenerateLoad" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH secret", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SSHUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update host SSH setting", - "tags": [ - "SSH" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "key", - "value" - ], - "formatEN": "update SSH setting [key] =\u003e [value]", - "formatZH": "修改 SSH 配置 [key] =\u003e [value]", - "paramKeys": [] - } - } - }, - "/host/tool": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.HostToolRes" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get tool status", - "tags": [ - "Host tool" - ] - } - }, - "/host/tool/config": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolConfig" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.HostToolConfig" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get tool config", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate" - ], - "formatEN": "[operate] tool config", - "formatZH": "[operate] 主机工具配置文件 ", - "paramKeys": [] - } - } - }, - "/host/tool/create": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolCreate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Create Host tool Config", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "type" - ], - "formatEN": "create [type] config", - "formatZH": "创建 [type] 配置", - "paramKeys": [] - } - } - }, - "/host/tool/log": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolLogReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get tool logs", - "tags": [ - "Host tool" - ] - } - }, - "/host/tool/operate": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolReq" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Operate tool", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate", - "type" - ], - "formatEN": "[operate] [type]", - "formatZH": "[operate] [type] ", - "paramKeys": [] - } - } - }, - "/host/tool/supervisor/process": { - "get": { - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.SupervisorProcessConfig" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get Supervisor process config", - "tags": [ - "Host tool" - ] - }, - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.SupervisorProcessConfig" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Create Supervisor process", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate" - ], - "formatEN": "[operate] process", - "formatZH": "[operate] 守护进程 ", - "paramKeys": [] - } - } - }, - "/host/tool/supervisor/process/file": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.SupervisorProcessFileReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get Supervisor process config file", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate" - ], - "formatEN": "[operate] Supervisor Process Config file", - "formatZH": "[operate] Supervisor 进程文件 ", - "paramKeys": [] - } - } - }, "/hosts/firewall/base": { "get": { "responses": { @@ -11725,6 +12229,697 @@ const docTemplate = `{ } } }, + "/hosts/ssh/cert": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.CreateRootCert" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Generate host SSH secret", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "generate SSH secret", + "formatZH": "生成 SSH 密钥 ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/cert/delete": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ForceDelete" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete host SSH secret", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "delete SSH secret", + "formatZH": "删除 SSH 密钥 ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/cert/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchWithPage" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.PageResult" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH secret", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/cert/sync": { + "post": { + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Sycn host SSH secret", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "sync SSH secret", + "formatZH": "同步 SSH 密钥 ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/conf": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH conf", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/log": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchSSHLog" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.PageResult" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH logs", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/log/export": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchSSHLog" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Export host SSH logs", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/operate": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.Operate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate SSH", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operation" + ], + "formatEN": "[operation] SSH", + "formatZH": "[operation] SSH ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/search": { + "post": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.SSHInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH setting info", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SSHUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update host SSH setting", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "key", + "value" + ], + "formatEN": "update SSH setting [key] =\u003e [value]", + "formatZH": "修改 SSH 配置 [key] =\u003e [value]", + "paramKeys": [] + } + } + }, + "/hosts/tool": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.HostToolRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get tool status", + "tags": [ + "Host tool" + ] + } + }, + "/hosts/tool/config": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolConfig" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.HostToolConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get tool config", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate" + ], + "formatEN": "[operate] tool config", + "formatZH": "[operate] 主机工具配置文件 ", + "paramKeys": [] + } + } + }, + "/hosts/tool/create": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolCreate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create Host tool Config", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "type" + ], + "formatEN": "create [type] config", + "formatZH": "创建 [type] 配置", + "paramKeys": [] + } + } + }, + "/hosts/tool/log": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolLogReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get tool logs", + "tags": [ + "Host tool" + ] + } + }, + "/hosts/tool/operate": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolReq" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate tool", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate", + "type" + ], + "formatEN": "[operate] [type]", + "formatZH": "[operate] [type] ", + "paramKeys": [] + } + } + }, + "/hosts/tool/supervisor/process": { + "get": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.SupervisorProcessConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get Supervisor process config", + "tags": [ + "Host tool" + ] + }, + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.SupervisorProcessConfig" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create Supervisor process", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate" + ], + "formatEN": "[operate] process", + "formatZH": "[operate] 守护进程 ", + "paramKeys": [] + } + } + }, + "/hosts/tool/supervisor/process/file": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.SupervisorProcessFileReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get Supervisor process config file", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate" + ], + "formatEN": "[operate] Supervisor Process Config file", + "formatZH": "[operate] Supervisor 进程文件 ", + "paramKeys": [] + } + } + }, "/installed/delete/check/:id": { "get": { "consumes": [ @@ -11755,30 +12950,6 @@ const docTemplate = `{ ] } }, - "/logs/system": { - "post": { - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load system logs", - "tags": [ - "Logs" - ] - } - }, "/logs/system/files": { "get": { "responses": { @@ -11868,6 +13039,308 @@ const docTemplate = `{ ] } }, + "/mcp/domain/bind": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpBindDomain" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Bind Domain for mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/domain/get": { + "get": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.McpBindDomainRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get bin Domain for mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/domain/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpBindDomainUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update bind Domain for mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerSearch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.McpServersRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "List mcp servers", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerCreate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server/del": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerDelete" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server/op": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mount": { + "post": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.DiskInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "system mount", + "tags": [ + "File" + ] + } + }, "/openresty": { "get": { "responses": { @@ -11976,6 +13449,63 @@ const docTemplate = `{ } } }, + "/openresty/https": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.NginxConfigRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get default HTTPs status", + "tags": [ + "OpenResty" + ] + }, + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.NginxOperateReq" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate default HTTPs", + "tags": [ + "OpenResty" + ] + } + }, "/openresty/module/update": { "post": { "consumes": [ @@ -12201,6 +13731,39 @@ const docTemplate = `{ } } }, + "/process/{pid}": { + "get": { + "parameters": [ + { + "description": "PID", + "in": "path", + "name": "pid", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/websocket.PsProcessData" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get Process Info By PID", + "tags": [ + "Process" + ] + } + }, "/record/del": { "post": { "consumes": [ @@ -12667,6 +14230,77 @@ const docTemplate = `{ ] } }, + "/runtimes/php/container/:id": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "path", + "name": "id", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/request.PHPContainerConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get PHP container config", + "tags": [ + "Runtime" + ] + } + }, + "/runtimes/php/container/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.PHPContainerConfig" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update PHP container config", + "tags": [ + "Runtime" + ] + } + }, "/runtimes/php/extensions": { "post": { "consumes": [ @@ -12989,6 +14623,43 @@ const docTemplate = `{ ] } }, + "/runtimes/php/fpm/status/:id": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "path", + "name": "id", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "additionalProperties": true, + "type": "object" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get PHP runtime status", + "tags": [ + "Runtime" + ] + } + }, "/runtimes/php/update": { "post": { "consumes": [ @@ -13042,6 +14713,41 @@ const docTemplate = `{ } } }, + "/runtimes/remark": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.RuntimeRemark" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update runtime remark", + "tags": [ + "Runtime" + ] + } + }, "/runtimes/search": { "post": { "consumes": [ @@ -13257,272 +14963,6 @@ const docTemplate = `{ } } }, - "/script": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ScriptOperate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Add script", - "tags": [ - "ScriptLibrary" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "name" - ], - "formatEN": "add script [name]", - "formatZH": "添加脚本库脚本 [name]", - "paramKeys": [] - } - } - }, - "/script/del": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.OperateByIDs" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Delete script", - "tags": [ - "ScriptLibrary" - ], - "x-panel-log": { - "BeforeFunctions": [ - { - "db": "script_librarys", - "input_column": "id", - "input_value": "ids", - "isList": true, - "output_column": "name", - "output_value": "names" - } - ], - "bodyKeys": [ - "ids" - ], - "formatEN": "delete script [names]", - "formatZH": "删除脚本库脚本 [names]", - "paramKeys": [] - } - } - }, - "/script/search": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SearchPageWithGroup" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.PageResult" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Page script", - "tags": [ - "ScriptLibrary" - ] - } - }, - "/script/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ScriptOperate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update script", - "tags": [ - "ScriptLibrary" - ], - "x-panel-log": { - "BeforeFunctions": [ - { - "db": "cronjobs", - "input_column": "id", - "input_value": "id", - "isList": false, - "output_column": "name", - "output_value": "name" - } - ], - "bodyKeys": [ - "id" - ], - "formatEN": "update script [name]", - "formatZH": "更新脚本库脚本 [name]", - "paramKeys": [] - } - } - }, - "/settings/api/config/generate/key": { - "post": { - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "generate api key", - "tags": [ - "System Setting" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [], - "formatEN": "generate api key", - "formatZH": "生成 API 接口密钥", - "paramKeys": [] - } - } - }, - "/settings/api/config/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ApiInterfaceConfig" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update api config", - "tags": [ - "System Setting" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "ipWhiteList" - ], - "formatEN": "update api config =\u003e IP White List: [ipWhiteList]", - "formatZH": "更新 API 接口配置 =\u003e IP 白名单: [ipWhiteList]", - "paramKeys": [] - } - } - }, "/settings/basedir": { "get": { "responses": { @@ -13547,6 +14987,39 @@ const docTemplate = `{ ] } }, + "/settings/get/{key}": { + "get": { + "parameters": [ + { + "description": "key", + "in": "path", + "name": "key", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.SettingInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load system setting by key", + "tags": [ + "System Setting" + ] + } + }, "/settings/search": { "post": { "responses": { @@ -14010,6 +15483,75 @@ const docTemplate = `{ ] } }, + "/settings/ssh": { + "post": { + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Save local conn info", + "tags": [ + "System Setting" + ] + } + }, + "/settings/ssh/check/info": { + "post": { + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "bool" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Check local conn info", + "tags": [ + "System Setting" + ] + } + }, + "/settings/ssh/conn": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.SSHConnData" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load local conn", + "tags": [ + "System Setting" + ] + } + }, "/settings/update": { "post": { "consumes": [ @@ -14403,44 +15945,6 @@ const docTemplate = `{ } } }, - "/toolbox/clam/record/log": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ClamLogReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load clam record detail", - "tags": [ - "Clam" - ] - } - }, "/toolbox/clam/record/search": { "post": { "consumes": [ @@ -15599,6 +17103,33 @@ const docTemplate = `{ } } }, + "/user/group": { + "post": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.UserGroupResponse" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "system user and group", + "tags": [ + "File" + ] + } + }, "/websites": { "post": { "consumes": [ @@ -15943,6 +17474,62 @@ const docTemplate = `{ ] } }, + "/websites/acme/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.WebsiteAcmeAccountUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.WebsiteAcmeAccountDTO" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update website acme account", + "tags": [ + "Website Acme" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "website_acme_accounts", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "email", + "output_value": "email" + } + ], + "bodyKeys": [ + "id" + ], + "formatEN": "Update acme [email]", + "formatZH": "更新 acme [email]", + "paramKeys": [] + } + } + }, "/websites/auths": { "post": { "consumes": [ @@ -16554,6 +18141,41 @@ const docTemplate = `{ } } }, + "/websites/crosssite": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.CrossSiteAccessOp" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate Cross Site Access", + "tags": [ + "Website" + ] + } + }, "/websites/databases": { "get": { "consumes": [ @@ -17307,6 +18929,41 @@ const docTemplate = `{ } } }, + "/websites/exec/composer": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.ExecComposerReq" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Exec Composer", + "tags": [ + "Website" + ] + } + }, "/websites/lbs": { "get": { "consumes": [ @@ -19184,6 +20841,9 @@ const docTemplate = `{ "crossVersionUpdate": { "type": "boolean" }, + "deprecated": { + "type": "number" + }, "description": { "$ref": "#/definitions/dto.Locale" }, @@ -19326,6 +20986,9 @@ const docTemplate = `{ "type": "string" }, "type": "array" + }, + "taskID": { + "type": "string" } }, "required": [ @@ -19410,7 +21073,11 @@ const docTemplate = `{ "enum": [ "mysql", "mariadb", - "postgresql" + "postgresql", + "redis", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" }, @@ -19426,6 +21093,21 @@ const docTemplate = `{ ], "type": "object" }, + "dto.ChangeGroup": { + "properties": { + "groupID": { + "type": "integer" + }, + "id": { + "type": "integer" + } + }, + "required": [ + "groupID", + "id" + ], + "type": "object" + }, "dto.ChangePasswd": { "properties": { "passwd": { @@ -19437,6 +21119,17 @@ const docTemplate = `{ }, "type": "object" }, + "dto.ChangeQuicks": { + "properties": { + "quicks": { + "items": { + "$ref": "#/definitions/dto.QuickJump" + }, + "type": "array" + } + }, + "type": "object" + }, "dto.ChangeRedisPass": { "properties": { "database": { @@ -19479,6 +21172,9 @@ const docTemplate = `{ "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, @@ -19516,9 +21212,6 @@ const docTemplate = `{ }, "removeInfected": { "type": "boolean" - }, - "removeRecord": { - "type": "boolean" } }, "required": [ @@ -19540,20 +21233,6 @@ const docTemplate = `{ ], "type": "object" }, - "dto.ClamLogReq": { - "properties": { - "clamName": { - "type": "string" - }, - "recordName": { - "type": "string" - }, - "tail": { - "type": "string" - } - }, - "type": "object" - }, "dto.ClamLogSearch": { "properties": { "clamID": { @@ -19570,6 +21249,9 @@ const docTemplate = `{ }, "startTime": { "type": "string" + }, + "status": { + "type": "string" } }, "required": [ @@ -19583,6 +21265,9 @@ const docTemplate = `{ "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, @@ -19704,6 +21389,9 @@ const docTemplate = `{ }, "dto.CommonBackup": { "properties": { + "description": { + "type": "string" + }, "detailName": { "type": "string" }, @@ -19726,7 +21414,10 @@ const docTemplate = `{ "mariadb", "redis", "website", - "postgresql" + "postgresql", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" } @@ -19766,7 +21457,10 @@ const docTemplate = `{ "mariadb", "redis", "website", - "postgresql" + "postgresql", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" } @@ -19816,6 +21510,9 @@ const docTemplate = `{ }, "dto.ComposeOperation": { "properties": { + "force": { + "type": "boolean" + }, "name": { "type": "string" }, @@ -19823,6 +21520,7 @@ const docTemplate = `{ "enum": [ "up", "start", + "restart", "stop", "down", "delete" @@ -19937,6 +21635,9 @@ const docTemplate = `{ }, "pause": { "type": "boolean" + }, + "taskID": { + "type": "string" } }, "required": [ @@ -20132,6 +21833,17 @@ const docTemplate = `{ ], "type": "object" }, + "dto.ContainerOptions": { + "properties": { + "name": { + "type": "string" + }, + "state": { + "type": "string" + } + }, + "type": "object" + }, "dto.ContainerPrune": { "properties": { "pruneType": { @@ -20144,6 +21856,9 @@ const docTemplate = `{ ], "type": "string" }, + "taskID": { + "type": "string" + }, "withTagAll": { "type": "boolean" } @@ -20153,17 +21868,6 @@ const docTemplate = `{ ], "type": "object" }, - "dto.ContainerPruneReport": { - "properties": { - "deletedNumber": { - "type": "integer" - }, - "spaceReclaimed": { - "type": "integer" - } - }, - "type": "object" - }, "dto.ContainerRename": { "properties": { "name": { @@ -20269,8 +21973,11 @@ const docTemplate = `{ "image": { "type": "string" }, - "name": { - "type": "string" + "names": { + "items": { + "type": "string" + }, + "type": "array" }, "taskID": { "type": "string" @@ -20278,7 +21985,42 @@ const docTemplate = `{ }, "required": [ "image", - "name" + "names" + ], + "type": "object" + }, + "dto.CreateRootCert": { + "properties": { + "description": { + "type": "string" + }, + "encryptionMode": { + "enum": [ + "rsa", + "ed25519", + "ecdsa", + "dsa" + ], + "type": "string" + }, + "mode": { + "type": "string" + }, + "name": { + "type": "string" + }, + "passPhrase": { + "type": "string" + }, + "privateKey": { + "type": "string" + }, + "publicKey": { + "type": "string" + } + }, + "required": [ + "encryptionMode" ], "type": "object" }, @@ -20287,6 +22029,9 @@ const docTemplate = `{ "cleanData": { "type": "boolean" }, + "cleanRemoteData": { + "type": "boolean" + }, "ids": { "items": { "type": "integer" @@ -20304,6 +22049,9 @@ const docTemplate = `{ "cleanData": { "type": "boolean" }, + "cleanRemoteData": { + "type": "boolean" + }, "cronjobID": { "type": "integer" }, @@ -20316,11 +22064,25 @@ const docTemplate = `{ ], "type": "object" }, - "dto.CronjobCreate": { + "dto.CronjobImport": { + "properties": { + "cronjobs": { + "items": { + "$ref": "#/definitions/dto.CronjobTrans" + }, + "type": "array" + } + }, + "type": "object" + }, + "dto.CronjobOperate": { "properties": { "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, @@ -20348,6 +22110,15 @@ const docTemplate = `{ "executor": { "type": "string" }, + "groupID": { + "type": "integer" + }, + "id": { + "type": "integer" + }, + "ignoreErr": { + "type": "boolean" + }, "isDir": { "type": "boolean" }, @@ -20358,15 +22129,25 @@ const docTemplate = `{ "minimum": 1, "type": "integer" }, + "retryTimes": { + "minimum": 0, + "type": "integer" + }, "script": { "type": "string" }, + "scriptID": { + "type": "integer" + }, "scriptMode": { "type": "string" }, "secret": { "type": "string" }, + "snapshotRule": { + "$ref": "#/definitions/dto.SnapshotRule" + }, "sourceAccountIDs": { "type": "string" }, @@ -20379,6 +22160,10 @@ const docTemplate = `{ "specCustom": { "type": "boolean" }, + "timeout": { + "minimum": 1, + "type": "integer" + }, "type": { "type": "string" }, @@ -20399,21 +22184,6 @@ const docTemplate = `{ ], "type": "object" }, - "dto.CronjobDownload": { - "properties": { - "backupAccountID": { - "type": "integer" - }, - "recordID": { - "type": "integer" - } - }, - "required": [ - "backupAccountID", - "recordID" - ], - "type": "object" - }, "dto.CronjobSpec": { "properties": { "spec": { @@ -20425,16 +22195,22 @@ const docTemplate = `{ ], "type": "object" }, - "dto.CronjobUpdate": { + "dto.CronjobTrans": { "properties": { "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, - "appID": { - "type": "string" + "apps": { + "items": { + "$ref": "#/definitions/dto.TransHelper" + }, + "type": "array" }, "command": { "type": "string" @@ -20443,13 +22219,16 @@ const docTemplate = `{ "type": "string" }, "dbName": { - "type": "string" + "items": { + "$ref": "#/definitions/dto.TransHelper" + }, + "type": "array" }, "dbType": { "type": "string" }, - "downloadAccountID": { - "type": "integer" + "downloadAccount": { + "type": "string" }, "exclusionRules": { "type": "string" @@ -20457,9 +22236,12 @@ const docTemplate = `{ "executor": { "type": "string" }, - "id": { + "groupID": { "type": "integer" }, + "ignoreErr": { + "type": "boolean" + }, "isDir": { "type": "boolean" }, @@ -20467,7 +22249,9 @@ const docTemplate = `{ "type": "string" }, "retainCopies": { - "minimum": 1, + "type": "integer" + }, + "retryTimes": { "type": "integer" }, "script": { @@ -20476,11 +22260,20 @@ const docTemplate = `{ "scriptMode": { "type": "string" }, + "scriptName": { + "type": "string" + }, "secret": { "type": "string" }, - "sourceAccountIDs": { - "type": "string" + "snapshotRule": { + "$ref": "#/definitions/dto.SnapshotTransHelper" + }, + "sourceAccounts": { + "items": { + "type": "string" + }, + "type": "array" }, "sourceDir": { "type": "string" @@ -20491,6 +22284,9 @@ const docTemplate = `{ "specCustom": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -20500,16 +22296,13 @@ const docTemplate = `{ "user": { "type": "string" }, - "website": { - "type": "string" + "websites": { + "items": { + "type": "string" + }, + "type": "array" } }, - "required": [ - "id", - "name", - "spec", - "type" - ], "type": "object" }, "dto.CronjobUpdateStatus": { @@ -20554,7 +22347,10 @@ const docTemplate = `{ "mysql", "mariadb", "postgresql", - "redis" + "redis", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" } @@ -20591,12 +22387,6 @@ const docTemplate = `{ "ipv6": { "type": "boolean" }, - "isActive": { - "type": "boolean" - }, - "isExist": { - "type": "boolean" - }, "isSwarm": { "type": "boolean" }, @@ -20676,6 +22466,12 @@ const docTemplate = `{ "platformVersion": { "type": "string" }, + "quickJump": { + "items": { + "$ref": "#/definitions/dto.QuickJump" + }, + "type": "array" + }, "systemProxy": { "type": "string" }, @@ -20747,6 +22543,15 @@ const docTemplate = `{ "memoryAvailable": { "type": "integer" }, + "memoryCache": { + "type": "integer" + }, + "memoryFree": { + "type": "integer" + }, + "memoryShard": { + "type": "integer" + }, "memoryTotal": { "type": "integer" }, @@ -20873,6 +22678,9 @@ const docTemplate = `{ "ssl": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -20951,6 +22759,9 @@ const docTemplate = `{ "ssl": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -21073,6 +22884,9 @@ const docTemplate = `{ "ssl": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -21331,6 +23145,9 @@ const docTemplate = `{ "enablePing" ], "type": "string" + }, + "withDockerRestart": { + "type": "boolean" } }, "required": [ @@ -21542,43 +23359,6 @@ const docTemplate = `{ }, "type": "object" }, - "dto.GenerateLoad": { - "properties": { - "encryptionMode": { - "enum": [ - "rsa", - "ed25519", - "ecdsa", - "dsa" - ], - "type": "string" - } - }, - "required": [ - "encryptionMode" - ], - "type": "object" - }, - "dto.GenerateSSH": { - "properties": { - "encryptionMode": { - "enum": [ - "rsa", - "ed25519", - "ecdsa", - "dsa" - ], - "type": "string" - }, - "password": { - "type": "string" - } - }, - "required": [ - "encryptionMode" - ], - "type": "object" - }, "dto.GroupCreate": { "properties": { "id": { @@ -21679,7 +23459,7 @@ const docTemplate = `{ "type": "boolean" }, "size": { - "type": "string" + "type": "integer" }, "tags": { "items": { @@ -21780,14 +23560,12 @@ const docTemplate = `{ "type": "integer" }, "password": { - "maxLength": 256, "type": "string" }, "protocol": { "type": "string" }, "username": { - "maxLength": 256, "type": "string" } }, @@ -21842,6 +23620,21 @@ const docTemplate = `{ ], "type": "object" }, + "dto.LoadRedisStatus": { + "properties": { + "name": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name", + "type" + ], + "type": "object" + }, "dto.Locale": { "properties": { "en": { @@ -21850,6 +23643,9 @@ const docTemplate = `{ "ja": { "type": "string" }, + "ko": { + "type": "string" + }, "ms": { "type": "string" }, @@ -21859,6 +23655,9 @@ const docTemplate = `{ "ru": { "type": "string" }, + "tr": { + "type": "string" + }, "zh": { "type": "string" }, @@ -22037,7 +23836,8 @@ const docTemplate = `{ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" } @@ -22060,7 +23860,8 @@ const docTemplate = `{ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" } @@ -22126,7 +23927,8 @@ const docTemplate = `{ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" } @@ -22335,7 +24137,8 @@ const docTemplate = `{ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" }, @@ -22652,6 +24455,17 @@ const docTemplate = `{ ], "type": "object" }, + "dto.OperateByIDs": { + "properties": { + "ids": { + "items": { + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "dto.OperateByType": { "properties": { "type": { @@ -22774,6 +24588,12 @@ const docTemplate = `{ }, "dto.PageCronjob": { "properties": { + "groupIDs": { + "items": { + "type": "integer" + }, + "type": "array" + }, "info": { "type": "string" }, @@ -22808,6 +24628,43 @@ const docTemplate = `{ ], "type": "object" }, + "dto.PageImage": { + "properties": { + "name": { + "type": "string" + }, + "order": { + "enum": [ + "null", + "ascending", + "descending" + ], + "type": "string" + }, + "orderBy": { + "enum": [ + "size", + "tags", + "createdAt", + "isUsed" + ], + "type": "string" + }, + "page": { + "type": "integer" + }, + "pageSize": { + "type": "integer" + } + }, + "required": [ + "order", + "orderBy", + "page", + "pageSize" + ], + "type": "object" + }, "dto.PageInfo": { "properties": { "page": { @@ -23019,7 +24876,8 @@ const docTemplate = `{ }, "type": { "enum": [ - "postgresql" + "postgresql", + "postgresql-cluster" ], "type": "string" } @@ -23041,7 +24899,8 @@ const docTemplate = `{ }, "type": { "enum": [ - "postgresql" + "postgresql", + "postgresql-cluster" ], "type": "string" } @@ -23106,7 +24965,8 @@ const docTemplate = `{ }, "type": { "enum": [ - "postgresql" + "postgresql", + "postgresql-cluster" ], "type": "string" } @@ -23118,6 +24978,32 @@ const docTemplate = `{ ], "type": "object" }, + "dto.QuickJump": { + "properties": { + "detail": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "isShow": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "recommend": { + "type": "integer" + }, + "router": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, "dto.RecordFileSize": { "properties": { "id": { @@ -23219,6 +25105,13 @@ const docTemplate = `{ "database": { "type": "string" }, + "dbType": { + "enum": [ + "redis", + "redis-cluster" + ], + "type": "string" + }, "save": { "type": "string" }, @@ -23232,6 +25125,7 @@ const docTemplate = `{ }, "required": [ "database", + "dbType", "type" ], "type": "object" @@ -23241,6 +25135,13 @@ const docTemplate = `{ "database": { "type": "string" }, + "dbType": { + "enum": [ + "redis", + "redis-cluster" + ], + "type": "string" + }, "maxclients": { "type": "string" }, @@ -23252,7 +25153,8 @@ const docTemplate = `{ } }, "required": [ - "database" + "database", + "dbType" ], "type": "object" }, @@ -23373,36 +25275,41 @@ const docTemplate = `{ }, "type": "object" }, - "dto.SSHHistory": { + "dto.SSHConnData": { "properties": { - "address": { - "type": "string" - }, - "area": { + "addr": { "type": "string" }, "authMode": { + "enum": [ + "password", + "key" + ], "type": "string" }, - "date": { + "passPhrase": { "type": "string" }, - "dateStr": { - "type": "string" - }, - "message": { + "password": { "type": "string" }, "port": { - "type": "string" + "maximum": 65535, + "minimum": 1, + "type": "integer" }, - "status": { + "privateKey": { "type": "string" }, "user": { "type": "string" } }, + "required": [ + "addr", + "port", + "user" + ], "type": "object" }, "dto.SSHInfo": { @@ -23410,6 +25317,9 @@ const docTemplate = `{ "autoStart": { "type": "boolean" }, + "currentUser": { + "type": "string" + }, "isActive": { "type": "boolean" }, @@ -23440,26 +25350,6 @@ const docTemplate = `{ }, "type": "object" }, - "dto.SSHLog": { - "properties": { - "failedCount": { - "type": "integer" - }, - "logs": { - "items": { - "$ref": "#/definitions/dto.SSHHistory" - }, - "type": "array" - }, - "successfulCount": { - "type": "integer" - }, - "totalCount": { - "type": "integer" - } - }, - "type": "object" - }, "dto.SSHUpdate": { "properties": { "key": { @@ -23477,6 +25367,17 @@ const docTemplate = `{ ], "type": "object" }, + "dto.ScriptOptions": { + "properties": { + "id": { + "type": "integer" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, "dto.SearchByFilter": { "properties": { "filter": { @@ -23716,7 +25617,7 @@ const docTemplate = `{ "ntpSite": { "type": "string" }, - "snapshotIgnore": { + "systemIP": { "type": "string" }, "systemVersion": { @@ -23783,6 +25684,12 @@ const docTemplate = `{ "id": { "type": "integer" }, + "ignoreFiles": { + "items": { + "type": "string" + }, + "type": "array" + }, "interruptStep": { "type": "string" }, @@ -23804,6 +25711,12 @@ const docTemplate = `{ "taskID": { "type": "string" }, + "timeout": { + "type": "integer" + }, + "withDockerConf": { + "type": "boolean" + }, "withLoginLog": { "type": "boolean" }, @@ -23840,12 +25753,21 @@ const docTemplate = `{ }, "type": "array" }, + "ignoreFiles": { + "items": { + "type": "string" + }, + "type": "array" + }, "panelData": { "items": { "$ref": "#/definitions/dto.DataTree" }, "type": "array" }, + "withDockerConf": { + "type": "boolean" + }, "withLoginLog": { "type": "boolean" }, @@ -23905,6 +25827,34 @@ const docTemplate = `{ ], "type": "object" }, + "dto.SnapshotRule": { + "properties": { + "ignoreAppIDs": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "withImage": { + "type": "boolean" + } + }, + "type": "object" + }, + "dto.SnapshotTransHelper": { + "properties": { + "ignoreApps": { + "items": { + "$ref": "#/definitions/dto.TransHelper" + }, + "type": "array" + }, + "withImage": { + "type": "boolean" + } + }, + "type": "object" + }, "dto.SwapHelper": { "properties": { "isNew": { @@ -23942,6 +25892,17 @@ const docTemplate = `{ }, "type": "object" }, + "dto.TransHelper": { + "properties": { + "detailName": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, "dto.UpdateByFile": { "properties": { "file": { @@ -24006,6 +25967,17 @@ const docTemplate = `{ ], "type": "object" }, + "dto.UploadForRecover": { + "properties": { + "filePath": { + "type": "string" + }, + "targetDir": { + "type": "string" + } + }, + "type": "object" + }, "dto.VolumeCreate": { "properties": { "driver": { @@ -24236,6 +26208,29 @@ const docTemplate = `{ }, "type": "object" }, + "model.AppIgnoreUpgrade": { + "properties": { + "appDetailID": { + "type": "integer" + }, + "appID": { + "type": "integer" + }, + "createdAt": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "scope": { + "type": "string" + }, + "updatedAt": { + "type": "string" + } + }, + "type": "object" + }, "model.AppInstall": { "properties": { "app": { @@ -24262,6 +26257,9 @@ const docTemplate = `{ "env": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "httpPort": { "type": "integer" }, @@ -24365,6 +26363,9 @@ const docTemplate = `{ "port": { "type": "string" }, + "remark": { + "type": "string" + }, "resource": { "type": "string" }, @@ -24424,6 +26425,9 @@ const docTemplate = `{ "expireDate": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "ftpId": { "type": "integer" }, @@ -24489,6 +26493,9 @@ const docTemplate = `{ }, "model.WebsiteAcmeAccount": { "properties": { + "caDirURL": { + "type": "string" + }, "createdAt": { "type": "string" }, @@ -24515,6 +26522,9 @@ const docTemplate = `{ }, "url": { "type": "string" + }, + "useProxy": { + "type": "boolean" } }, "type": "object" @@ -24615,6 +26625,9 @@ const docTemplate = `{ "keyType": { "type": "string" }, + "masterSslId": { + "type": "integer" + }, "message": { "type": "string" }, @@ -24624,6 +26637,9 @@ const docTemplate = `{ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "organization": { "type": "string" }, @@ -24642,6 +26658,9 @@ const docTemplate = `{ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -24683,6 +26702,28 @@ const docTemplate = `{ ], "type": "object" }, + "request.AppIgnoreUpgradeReq": { + "properties": { + "appDetailID": { + "type": "integer" + }, + "appID": { + "type": "integer" + }, + "scope": { + "enum": [ + "all", + "version" + ], + "type": "string" + } + }, + "required": [ + "appID", + "scope" + ], + "type": "object" + }, "request.AppInstallCreate": { "properties": { "advanced": { @@ -24728,12 +26769,24 @@ const docTemplate = `{ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, "services": { "additionalProperties": { "type": "string" }, "type": "object" }, + "specifyIP": { + "type": "string" + }, "taskID": { "type": "string" }, @@ -24750,25 +26803,6 @@ const docTemplate = `{ ], "type": "object" }, - "request.AppInstalledIgnoreUpgrade": { - "properties": { - "detailID": { - "type": "integer" - }, - "operate": { - "enum": [ - "cancel", - "ignore" - ], - "type": "string" - } - }, - "required": [ - "detailID", - "operate" - ], - "type": "object" - }, "request.AppInstalledInfo": { "properties": { "key": { @@ -24806,6 +26840,9 @@ const docTemplate = `{ "dockerCompose": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "forceDelete": { "type": "boolean" }, @@ -24909,6 +26946,18 @@ const docTemplate = `{ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, + "specifyIP": { + "type": "string" + }, "type": { "type": "string" }, @@ -24958,14 +27007,6 @@ const docTemplate = `{ ], "type": "object" }, - "request.AppstoreUpdate": { - "properties": { - "defaultDomain": { - "type": "string" - } - }, - "type": "object" - }, "request.ChangeDatabase": { "properties": { "databaseID": { @@ -24979,8 +27020,25 @@ const docTemplate = `{ } }, "required": [ - "databaseID", - "databaseType", + "websiteID" + ], + "type": "object" + }, + "request.CrossSiteAccessOp": { + "properties": { + "operation": { + "enum": [ + "Enable", + "Disable" + ], + "type": "string" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "operation", "websiteID" ], "type": "object" @@ -25017,6 +27075,72 @@ const docTemplate = `{ ], "type": "object" }, + "request.DiskMountRequest": { + "properties": { + "autoMount": { + "type": "boolean" + }, + "device": { + "type": "string" + }, + "filesystem": { + "enum": [ + "ext4", + "xfs" + ], + "type": "string" + }, + "mountPoint": { + "type": "string" + } + }, + "required": [ + "device", + "filesystem", + "mountPoint" + ], + "type": "object" + }, + "request.DiskPartitionRequest": { + "properties": { + "autoMount": { + "type": "boolean" + }, + "device": { + "type": "string" + }, + "filesystem": { + "enum": [ + "ext4", + "xfs" + ], + "type": "string" + }, + "label": { + "type": "string" + }, + "mountPoint": { + "type": "string" + } + }, + "required": [ + "device", + "filesystem", + "mountPoint" + ], + "type": "object" + }, + "request.DiskUnmountRequest": { + "properties": { + "mountPoint": { + "type": "string" + } + }, + "required": [ + "mountPoint" + ], + "type": "object" + }, "request.Environment": { "properties": { "key": { @@ -25028,6 +27152,40 @@ const docTemplate = `{ }, "type": "object" }, + "request.ExecComposerReq": { + "properties": { + "command": { + "type": "string" + }, + "dir": { + "type": "string" + }, + "extCommand": { + "type": "string" + }, + "mirror": { + "type": "string" + }, + "taskID": { + "type": "string" + }, + "user": { + "type": "string" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "command", + "dir", + "mirror", + "taskID", + "user", + "websiteID" + ], + "type": "object" + }, "request.ExposedPort": { "properties": { "containerPort": { @@ -25258,6 +27416,12 @@ const docTemplate = `{ "cover": { "type": "boolean" }, + "coverPaths": { + "items": { + "type": "string" + }, + "type": "array" + }, "name": { "type": "string" }, @@ -25323,6 +27487,9 @@ const docTemplate = `{ "properties": { "path": { "type": "string" + }, + "withInit": { + "type": "boolean" } }, "required": [ @@ -25330,6 +27497,20 @@ const docTemplate = `{ ], "type": "object" }, + "request.FilePathsCheck": { + "properties": { + "paths": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "paths" + ], + "type": "object" + }, "request.FileReadByLineReq": { "properties": { "ID": { @@ -25536,6 +27717,199 @@ const docTemplate = `{ ], "type": "object" }, + "request.McpBindDomain": { + "properties": { + "domain": { + "type": "string" + }, + "ipList": { + "type": "string" + }, + "sslID": { + "type": "integer" + } + }, + "required": [ + "domain" + ], + "type": "object" + }, + "request.McpBindDomainUpdate": { + "properties": { + "ipList": { + "type": "string" + }, + "sslID": { + "type": "integer" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "websiteID" + ], + "type": "object" + }, + "request.McpServerCreate": { + "properties": { + "baseUrl": { + "type": "string" + }, + "command": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "hostIP": { + "type": "string" + }, + "name": { + "type": "string" + }, + "outputTransport": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "ssePath": { + "type": "string" + }, + "streamableHttpPath": { + "type": "string" + }, + "type": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + } + }, + "required": [ + "command", + "name", + "outputTransport", + "port", + "type" + ], + "type": "object" + }, + "request.McpServerDelete": { + "properties": { + "id": { + "type": "integer" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "request.McpServerOperate": { + "properties": { + "id": { + "type": "integer" + }, + "operate": { + "type": "string" + } + }, + "required": [ + "id", + "operate" + ], + "type": "object" + }, + "request.McpServerSearch": { + "properties": { + "name": { + "type": "string" + }, + "page": { + "type": "integer" + }, + "pageSize": { + "type": "integer" + }, + "sync": { + "type": "boolean" + } + }, + "required": [ + "page", + "pageSize" + ], + "type": "object" + }, + "request.McpServerUpdate": { + "properties": { + "baseUrl": { + "type": "string" + }, + "command": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "hostIP": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "outputTransport": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "ssePath": { + "type": "string" + }, + "streamableHttpPath": { + "type": "string" + }, + "type": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + } + }, + "required": [ + "command", + "id", + "name", + "outputTransport", + "port", + "type" + ], + "type": "object" + }, "request.NewAppInstall": { "properties": { "advanced": { @@ -25581,6 +27955,18 @@ const docTemplate = `{ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, + "specifyIP": { + "type": "string" + }, "type": { "type": "string" }, @@ -25630,8 +28016,6 @@ const docTemplate = `{ } }, "required": [ - "extends", - "return", "websiteID" ], "type": "object" @@ -25766,6 +28150,21 @@ const docTemplate = `{ ], "type": "object" }, + "request.NginxOperateReq": { + "properties": { + "operate": { + "enum": [ + "enable", + "disable" + ], + "type": "string" + } + }, + "required": [ + "operate" + ], + "type": "object" + }, "request.NginxPathAuthUpdate": { "properties": { "name": { @@ -26017,6 +28416,38 @@ const docTemplate = `{ ], "type": "object" }, + "request.PHPContainerConfig": { + "properties": { + "containerName": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "exposedPorts": { + "items": { + "$ref": "#/definitions/request.ExposedPort" + }, + "type": "array" + }, + "id": { + "type": "integer" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.PHPExtensionInstallReq": { "properties": { "ID": { @@ -26130,6 +28561,12 @@ const docTemplate = `{ }, "request.PHPSupervisorProcessConfig": { "properties": { + "autoRestart": { + "type": "string" + }, + "autoStart": { + "type": "string" + }, "command": { "type": "string" }, @@ -26236,6 +28673,17 @@ const docTemplate = `{ ], "type": "object" }, + "request.ReqWithID": { + "properties": { + "id": { + "type": "integer" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.RuntimeCreate": { "properties": { "appDetailId": { @@ -26272,6 +28720,9 @@ const docTemplate = `{ "additionalProperties": true, "type": "object" }, + "remark": { + "type": "string" + }, "resource": { "type": "string" }, @@ -26315,6 +28766,20 @@ const docTemplate = `{ }, "type": "object" }, + "request.RuntimeRemark": { + "properties": { + "id": { + "type": "integer" + }, + "remark": { + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.RuntimeSearch": { "properties": { "name": { @@ -26378,6 +28843,9 @@ const docTemplate = `{ "rebuild": { "type": "boolean" }, + "remark": { + "type": "string" + }, "source": { "type": "string" }, @@ -26414,6 +28882,12 @@ const docTemplate = `{ }, "request.SupervisorProcessConfig": { "properties": { + "autoRestart": { + "type": "string" + }, + "autoStart": { + "type": "string" + }, "command": { "type": "string" }, @@ -26480,6 +28954,9 @@ const docTemplate = `{ }, "request.WebsiteAcmeAccountCreate": { "properties": { + "caDirURL": { + "type": "string" + }, "eabHmacKey": { "type": "string" }, @@ -26505,9 +28982,13 @@ const docTemplate = `{ "letsencrypt", "zerossl", "buypass", - "google" + "google", + "custom" ], "type": "string" + }, + "useProxy": { + "type": "boolean" } }, "required": [ @@ -26517,6 +28998,20 @@ const docTemplate = `{ ], "type": "object" }, + "request.WebsiteAcmeAccountUpdate": { + "properties": { + "id": { + "type": "integer" + }, + "useProxy": { + "type": "boolean" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.WebsiteBatchDelReq": { "properties": { "ids": { @@ -26735,6 +29230,9 @@ const docTemplate = `{ "runtimeID": { "type": "integer" }, + "siteDir": { + "type": "string" + }, "taskID": { "type": "string" }, @@ -26760,16 +29258,13 @@ const docTemplate = `{ "acmeAccountId": { "type": "integer" }, - "domains": { - "items": { - "type": "string" - }, - "type": "array" + "websiteSSLId": { + "type": "integer" } }, "required": [ "acmeAccountId", - "domains" + "websiteSSLId" ], "type": "object" }, @@ -26933,8 +29428,8 @@ const docTemplate = `{ "type": "boolean" }, "hstsIncludeSubDomains": { - "type": "boolean" - }, + "type": "boolean" + }, "http3": { "type": "boolean" }, @@ -27207,6 +29702,12 @@ const docTemplate = `{ }, "type": "object" }, + "serverCacheTime": { + "type": "integer" + }, + "serverCacheUnit": { + "type": "string" + }, "sni": { "type": "boolean" } @@ -27327,6 +29828,9 @@ const docTemplate = `{ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "otherDomains": { "type": "string" }, @@ -27339,6 +29843,9 @@ const docTemplate = `{ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -27358,6 +29865,9 @@ const docTemplate = `{ "acmeAccountID": { "type": "string" }, + "domain": { + "type": "string" + }, "page": { "type": "integer" }, @@ -27409,6 +29919,9 @@ const docTemplate = `{ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "otherDomains": { "type": "string" }, @@ -27421,6 +29934,9 @@ const docTemplate = `{ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -27488,7 +30004,8 @@ const docTemplate = `{ "status", "createdAt", "expire_date", - "created_at" + "created_at", + "favorite" ], "type": "string" }, @@ -27498,6 +30015,9 @@ const docTemplate = `{ "pageSize": { "type": "integer" }, + "type": { + "type": "string" + }, "websiteGroupId": { "type": "integer" } @@ -27518,6 +30038,9 @@ const docTemplate = `{ "expireDate": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "id": { "type": "integer" }, @@ -27612,6 +30135,18 @@ const docTemplate = `{ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, + "specifyIP": { + "type": "string" + }, "type": { "type": "string" }, @@ -27748,9 +30283,6 @@ const docTemplate = `{ "id": { "type": "integer" }, - "ignoreUpgrade": { - "type": "boolean" - }, "image": { "type": "string" }, @@ -27816,6 +30348,9 @@ const docTemplate = `{ }, "version": { "type": "string" + }, + "websiteDir": { + "type": "string" } }, "type": "object" @@ -27887,6 +30422,9 @@ const docTemplate = `{ "key": { "type": "string" }, + "label": { + "$ref": "#/definitions/dto.Locale" + }, "labelEn": { "type": "string" }, @@ -27962,9 +30500,44 @@ const docTemplate = `{ }, "type": "object" }, - "response.AppstoreConfig": { + "response.CompleteDiskInfo": { "properties": { - "defaultDomain": { + "disks": { + "items": { + "$ref": "#/definitions/response.DiskInfo" + }, + "type": "array" + }, + "systemDisk": { + "$ref": "#/definitions/response.DiskInfo" + }, + "totalCapacity": { + "type": "integer" + }, + "totalDisks": { + "type": "integer" + }, + "unpartitionedDisks": { + "items": { + "$ref": "#/definitions/response.DiskBasicInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "response.ComponentInfo": { + "properties": { + "error": { + "type": "string" + }, + "exists": { + "type": "boolean" + }, + "path": { + "type": "string" + }, + "version": { "type": "string" } }, @@ -27972,6 +30545,12 @@ const docTemplate = `{ }, "response.Database": { "properties": { + "databaseName": { + "type": "string" + }, + "from": { + "type": "string" + }, "id": { "type": "integer" }, @@ -28007,6 +30586,17 @@ const docTemplate = `{ }, "type": "object" }, + "response.DepthDirSizeRes": { + "properties": { + "path": { + "type": "string" + }, + "size": { + "type": "integer" + } + }, + "type": "object" + }, "response.DirSizeRes": { "properties": { "size": { @@ -28018,6 +30608,120 @@ const docTemplate = `{ ], "type": "object" }, + "response.DiskBasicInfo": { + "properties": { + "avail": { + "type": "string" + }, + "device": { + "type": "string" + }, + "diskType": { + "type": "string" + }, + "filesystem": { + "type": "string" + }, + "isMounted": { + "type": "boolean" + }, + "isRemovable": { + "type": "boolean" + }, + "isSystem": { + "type": "boolean" + }, + "model": { + "type": "string" + }, + "mountPoint": { + "type": "string" + }, + "serial": { + "type": "string" + }, + "size": { + "type": "string" + }, + "usePercent": { + "type": "integer" + }, + "used": { + "type": "string" + } + }, + "type": "object" + }, + "response.DiskInfo": { + "properties": { + "avail": { + "type": "string" + }, + "device": { + "type": "string" + }, + "diskType": { + "type": "string" + }, + "filesystem": { + "type": "string" + }, + "isMounted": { + "type": "boolean" + }, + "isRemovable": { + "type": "boolean" + }, + "isSystem": { + "type": "boolean" + }, + "model": { + "type": "string" + }, + "mountPoint": { + "type": "string" + }, + "partitions": { + "items": { + "$ref": "#/definitions/response.DiskBasicInfo" + }, + "type": "array" + }, + "serial": { + "type": "string" + }, + "size": { + "type": "string" + }, + "usePercent": { + "type": "integer" + }, + "used": { + "type": "string" + } + }, + "type": "object" + }, + "response.ExistFileInfo": { + "properties": { + "isDir": { + "type": "boolean" + }, + "modTime": { + "type": "string" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "size": { + "type": "integer" + } + }, + "type": "object" + }, "response.FileInfo": { "properties": { "content": { @@ -28094,9 +30798,6 @@ const docTemplate = `{ }, "response.FileLineContent": { "properties": { - "content": { - "type": "string" - }, "end": { "type": "boolean" }, @@ -28109,8 +30810,17 @@ const docTemplate = `{ "path": { "type": "string" }, + "scope": { + "type": "string" + }, + "taskStatus": { + "type": "string" + }, "total": { "type": "integer" + }, + "totalLines": { + "type": "integer" } }, "type": "object" @@ -28166,19 +30876,116 @@ const docTemplate = `{ }, "type": "object" }, - "response.IgnoredApp": { + "response.McpBindDomainRes": { "properties": { - "detailID": { + "acmeAccountID": { "type": "integer" }, - "icon": { + "allowIPs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "connUrl": { + "type": "string" + }, + "domain": { + "type": "string" + }, + "sslID": { + "type": "integer" + }, + "websiteID": { + "type": "integer" + } + }, + "type": "object" + }, + "response.McpServerDTO": { + "properties": { + "baseUrl": { + "type": "string" + }, + "command": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "dir": { + "type": "string" + }, + "dockerCompose": { + "type": "string" + }, + "env": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "hostIP": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "message": { "type": "string" }, "name": { "type": "string" }, - "version": { + "outputTransport": { "type": "string" + }, + "port": { + "type": "integer" + }, + "ssePath": { + "type": "string" + }, + "status": { + "type": "string" + }, + "streamableHttpPath": { + "type": "string" + }, + "type": { + "type": "string" + }, + "updatedAt": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + }, + "websiteID": { + "type": "integer" + } + }, + "type": "object" + }, + "response.McpServersRes": { + "properties": { + "items": { + "items": { + "$ref": "#/definitions/response.McpServerDTO" + }, + "type": "array" + }, + "total": { + "type": "integer" } }, "type": "object" @@ -28249,6 +31056,14 @@ const docTemplate = `{ }, "type": "object" }, + "response.NginxConfigRes": { + "properties": { + "https": { + "type": "boolean" + } + }, + "type": "object" + }, "response.NginxFile": { "properties": { "content": { @@ -28529,6 +31344,9 @@ const docTemplate = `{ "codeDir": { "type": "string" }, + "container": { + "type": "string" + }, "containerStatus": { "type": "string" }, @@ -28569,6 +31387,9 @@ const docTemplate = `{ "port": { "type": "string" }, + "remark": { + "type": "string" + }, "resource": { "type": "string" }, @@ -28595,6 +31416,12 @@ const docTemplate = `{ }, "response.SupervisorProcessConfig": { "properties": { + "autoRestart": { + "type": "string" + }, + "autoStart": { + "type": "string" + }, "command": { "type": "string" }, @@ -28662,8 +31489,39 @@ const docTemplate = `{ }, "type": "object" }, + "response.UserGroupResponse": { + "properties": { + "groups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "items": { + "$ref": "#/definitions/response.UserInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "response.UserInfo": { + "properties": { + "group": { + "type": "string" + }, + "username": { + "type": "string" + } + }, + "type": "object" + }, "response.WebsiteAcmeAccountDTO": { "properties": { + "caDirURL": { + "type": "string" + }, "createdAt": { "type": "string" }, @@ -28690,6 +31548,9 @@ const docTemplate = `{ }, "url": { "type": "string" + }, + "useProxy": { + "type": "boolean" } }, "type": "object" @@ -28802,6 +31663,9 @@ const docTemplate = `{ "expireDate": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "ftpId": { "type": "integer" }, @@ -28814,6 +31678,9 @@ const docTemplate = `{ "id": { "type": "integer" }, + "openBaseDir": { + "type": "boolean" + }, "parentWebsiteID": { "type": "integer" }, @@ -28915,8 +31782,8 @@ const docTemplate = `{ "type": "boolean" }, "hstsIncludeSubDomains": { - "type": "boolean" - }, + "type": "boolean" + }, "http3": { "type": "boolean" }, @@ -29081,6 +31948,9 @@ const docTemplate = `{ "logPath": { "type": "string" }, + "masterSslId": { + "type": "integer" + }, "message": { "type": "string" }, @@ -29090,6 +31960,9 @@ const docTemplate = `{ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "organization": { "type": "string" }, @@ -29108,6 +31981,9 @@ const docTemplate = `{ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -29134,6 +32010,115 @@ const docTemplate = `{ } }, "type": "object" + }, + "websocket.ProcessConnect": { + "properties": { + "PID": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "status": { + "type": "string" + }, + "type": { + "type": "string" + }, + "localaddr": { + "type": "object" + }, + "remoteaddr": { + "type": "object" + } + }, + "type": "object" + }, + "websocket.PsProcessData": { + "properties": { + "PID": { + "type": "integer" + }, + "PPID": { + "type": "integer" + }, + "cmdLine": { + "type": "string" + }, + "connects": { + "items": { + "$ref": "#/definitions/websocket.ProcessConnect" + }, + "type": "array" + }, + "cpuPercent": { + "type": "string" + }, + "cpuValue": { + "type": "number" + }, + "data": { + "type": "string" + }, + "diskRead": { + "type": "string" + }, + "diskWrite": { + "type": "string" + }, + "envs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hwm": { + "type": "string" + }, + "locked": { + "type": "string" + }, + "name": { + "type": "string" + }, + "numConnections": { + "type": "integer" + }, + "numThreads": { + "type": "integer" + }, + "rss": { + "type": "string" + }, + "rssValue": { + "type": "integer" + }, + "stack": { + "type": "string" + }, + "startTime": { + "type": "string" + }, + "status": { + "type": "string" + }, + "swap": { + "type": "string" + }, + "username": { + "type": "string" + }, + "vms": { + "type": "string" + }, + "openFiles": { + "items": { + "type": "object" + }, + "type": "array" + } + }, + "type": "object" } } }` @@ -29153,4 +32138,4 @@ var SwaggerInfo = &swag.Spec{ func init() { swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo) -} \ No newline at end of file +} diff --git a/core/cmd/server/docs/swagger.json b/core/cmd/server/docs/swagger.json index ed649e530..4758af70f 100644 --- a/core/cmd/server/docs/swagger.json +++ b/core/cmd/server/docs/swagger.json @@ -14,198 +14,6 @@ "host": "localhost", "basePath": "/api/v2", "paths": { - "/agent/groups": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GroupCreate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Create group", - "tags": [ - "System Group" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "name", - "type" - ], - "formatEN": "create group [name][type]", - "formatZH": "创建组 [name][type]", - "paramKeys": [] - } - } - }, - "/agent/groups/del": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.OperateByID" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Delete group", - "tags": [ - "System Group" - ], - "x-panel-log": { - "BeforeFunctions": [ - { - "db": "groups", - "input_column": "id", - "input_value": "id", - "isList": false, - "output_column": "name", - "output_value": "name" - }, - { - "db": "groups", - "input_column": "id", - "input_value": "id", - "isList": false, - "output_column": "type", - "output_value": "type" - } - ], - "bodyKeys": [ - "id" - ], - "formatEN": "delete group [type][name]", - "formatZH": "删除组 [type][name]", - "paramKeys": [] - } - } - }, - "/agent/groups/search": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GroupSearch" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/dto.OperateByType" - }, - "type": "array" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "List groups", - "tags": [ - "System Group" - ] - } - }, - "/agent/groups/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GroupUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update group", - "tags": [ - "System Group" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "name", - "type" - ], - "formatEN": "update group [name][type]", - "formatZH": "更新组 [name][type]", - "paramKeys": [] - } - } - }, "/ai/domain/bind": { "post": { "consumes": [ @@ -744,7 +552,49 @@ ] } }, - "/apps/ignored": { + "/apps/ignored/cancel": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.ReqWithID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Cancel Ignore Upgrade App", + "tags": [ + "App" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "Cancel ignore application upgrade", + "formatZH": "取消忽略应用升级", + "paramKeys": [] + } + } + }, + "/apps/ignored/detail": { "get": { "consumes": [ "application/json" @@ -754,7 +604,7 @@ "description": "OK", "schema": { "items": { - "$ref": "#/definitions/response.IgnoredApp" + "$ref": "#/definitions/model.AppIgnoreUpgrade" }, "type": "array" } @@ -768,7 +618,7 @@ "Timestamp": [] } ], - "summary": "Get Ignore App", + "summary": "List Upgrade Ignored App", "tags": [ "App" ] @@ -1031,7 +881,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/request.AppInstalledIgnoreUpgrade" + "$ref": "#/definitions/request.AppIgnoreUpgradeReq" } } ], @@ -1048,21 +898,55 @@ "Timestamp": [] } ], - "summary": "ignore App Update", + "summary": "Ignore Upgrade App", "tags": [ "App" ], "x-panel-log": { "BeforeFunctions": [], - "bodyKeys": [ - "installId" - ], - "formatEN": "Application param update [installId]", - "formatZH": "忽略应用 [installId] 版本升级", + "bodyKeys": [], + "formatEN": "Ignore application upgrade", + "formatZH": "忽略应用升级", "paramKeys": [] } } }, + "/apps/installed/info/:appInstallId": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "App install id", + "in": "path", + "name": "appInstallId", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.AppInstallInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get app install info", + "tags": [ + "App" + ] + } + }, "/apps/installed/list": { "get": { "consumes": [ @@ -1509,65 +1393,6 @@ ] } }, - "/apps/store/config": { - "get": { - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.AppstoreConfig" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get appstore config", - "tags": [ - "App" - ] - } - }, - "/apps/store/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.AppstoreUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update appstore config", - "tags": [ - "App" - ] - } - }, "/apps/sync/local": { "post": { "responses": { @@ -1624,6 +1449,41 @@ } } }, + "/backup/record/description/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.UpdateDescription" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update backup record description", + "tags": [ + "Backup Account" + ] + } + }, "/backup/record/download": { "post": { "consumes": [ @@ -2235,6 +2095,50 @@ } } }, + "/backups/upload": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.UploadForRecover" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Upload file for recover", + "tags": [ + "Backup Account" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "filePath" + ], + "formatEN": "upload backup file [filePath]", + "formatZH": "上传备份文件 [filePath]", + "paramKeys": [] + } + } + }, "/buckets": { "post": { "consumes": [ @@ -3148,10 +3052,7 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.ContainerPruneReport" - } + "description": "OK" } }, "security": [ @@ -3235,7 +3136,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.SearchWithPage" + "$ref": "#/definitions/dto.PageImage" } } ], @@ -3470,7 +3371,7 @@ "description": "OK", "schema": { "items": { - "type": "string" + "$ref": "#/definitions/dto.ContainerOptions" }, "type": "array" } @@ -3490,6 +3391,39 @@ ] } }, + "/containers/list/byimage": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.ContainerOptions" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "List containers by image", + "tags": [ + "Container" + ] + } + }, "/containers/list/stats": { "get": { "responses": { @@ -3779,10 +3713,7 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.ContainerPruneReport" - } + "description": "OK" } }, "security": [ @@ -3940,7 +3871,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.ImageRepoDelete" + "$ref": "#/definitions/dto.OperateByID" } } ], @@ -3969,17 +3900,17 @@ { "db": "image_repos", "input_column": "id", - "input_value": "ids", - "isList": true, + "input_value": "id", + "isList": false, "output_column": "name", - "output_value": "names" + "output_value": "name" } ], "bodyKeys": [ - "ids" + "id" ], - "formatEN": "delete image repo [names]", - "formatZH": "删除镜像仓库 [names]", + "formatEN": "delete image repo [name]", + "formatZH": "删除镜像仓库 [name]", "paramKeys": [] } } @@ -4211,7 +4142,7 @@ "in": "path", "name": "id", "required": true, - "type": "integer" + "type": "string" } ], "responses": { @@ -4575,6 +4506,50 @@ } } }, + "/containers/users": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperationWithName" + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load container users", + "tags": [ + "Container" + ] + } + }, "/containers/volume": { "get": { "consumes": [ @@ -4735,51 +4710,6 @@ ] } }, - "/core/app/launcher/show": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SettingUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update app Launcher", - "tags": [ - "App Launcher" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "key", - "value" - ], - "formatEN": "app launcher [key] =\u003e show: [value]", - "formatZH": "首页应用 [key] =\u003e 显示:[value]", - "paramKeys": [] - } - } - }, "/core/auth/captcha": { "get": { "responses": { @@ -6106,6 +6036,373 @@ ] } }, + "/core/script": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ScriptOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Add script", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name" + ], + "formatEN": "add script [name]", + "formatZH": "添加脚本库脚本 [name]", + "paramKeys": [] + } + } + }, + "/core/script/del": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByIDs" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete script", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "script_librarys", + "input_column": "id", + "input_value": "ids", + "isList": true, + "output_column": "name", + "output_value": "names" + } + ], + "bodyKeys": [ + "ids" + ], + "formatEN": "delete script [names]", + "formatZH": "删除脚本库脚本 [names]", + "paramKeys": [] + } + } + }, + "/core/script/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchPageWithGroup" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.PageResult" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Page script", + "tags": [ + "ScriptLibrary" + ] + } + }, + "/core/script/sync": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByTaskID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Sync script from remote", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "sync scripts", + "formatZH": "同步脚本库脚本", + "paramKeys": [] + } + } + }, + "/core/script/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ScriptOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update script", + "tags": [ + "ScriptLibrary" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "cronjobs", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "name", + "output_value": "name" + } + ], + "bodyKeys": [ + "id" + ], + "formatEN": "update script [name]", + "formatZH": "更新脚本库脚本 [name]", + "paramKeys": [] + } + } + }, + "/core/settings/api/config/generate/key": { + "post": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "generate api key", + "tags": [ + "System Setting" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "generate api key", + "formatZH": "生成 API 接口密钥", + "paramKeys": [] + } + } + }, + "/core/settings/api/config/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ApiInterfaceConfig" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update api config", + "tags": [ + "System Setting" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "ipWhiteList" + ], + "formatEN": "update api config =\u003e IP White List: [ipWhiteList]", + "formatZH": "更新 API 接口配置 =\u003e IP 白名单: [ipWhiteList]", + "paramKeys": [] + } + } + }, + "/core/settings/apps/store/config": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.AppstoreConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get appstore config", + "tags": [ + "App" + ] + } + }, + "/core/settings/apps/store/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.AppstoreUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update appstore config", + "tags": [ + "App" + ] + } + }, "/core/settings/bind/update": { "post": { "consumes": [ @@ -6776,25 +7073,11 @@ }, "/core/settings/upgrade": { "get": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.Upgrade" - } - } - ], "responses": { "200": { "description": "OK", "schema": { - "type": "string" + "$ref": "#/definitions/dto.UpgradeInfo" } } }, @@ -6806,7 +7089,7 @@ "Timestamp": [] } ], - "summary": "Load release notes by version", + "summary": "Load upgrade info", "tags": [ "System Setting" ] @@ -6854,6 +7137,71 @@ } } }, + "/core/settings/upgrade/notes": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.Upgrade" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load release notes by version", + "tags": [ + "System Setting" + ] + } + }, + "/core/settings/upgrade/releases": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.ReleasesNotes" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load upgrade notes", + "tags": [ + "System Setting" + ] + } + }, "/cronjobs": { "post": { "consumes": [ @@ -6866,7 +7214,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.CronjobCreate" + "$ref": "#/definitions/dto.CronjobOperate" } } ], @@ -6952,7 +7300,7 @@ } } }, - "/cronjobs/download": { + "/cronjobs/export": { "post": { "consumes": [ "application/json" @@ -6964,7 +7312,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.CronjobDownload" + "$ref": "#/definitions/dto.OperateByIDs" } } ], @@ -6981,26 +7329,61 @@ "Timestamp": [] } ], - "summary": "Download cronjob records", + "summary": "Export cronjob list", + "tags": [ + "Cronjob" + ] + } + }, + "/cronjobs/group/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ChangeGroup" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update cronjob group", "tags": [ "Cronjob" ], "x-panel-log": { "BeforeFunctions": [ { - "db": "job_records", + "db": "cronjobs", "input_column": "id", - "input_value": "recordID", + "input_value": "id", "isList": false, - "output_column": "file", - "output_value": "file" + "output_column": "name", + "output_value": "name" } ], "bodyKeys": [ - "recordID" + "id" ], - "formatEN": "download the cronjob record [file]", - "formatZH": "下载计划任务记录 [file]", + "formatEN": "update cronjob group [name]", + "formatZH": "更新计划任务分组 [name]", "paramKeys": [] } } @@ -7058,6 +7441,76 @@ } } }, + "/cronjobs/import": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.CronjobImport" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Import cronjob list", + "tags": [ + "Cronjob" + ] + } + }, + "/cronjobs/load/info": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load cronjob info", + "tags": [ + "Cronjob" + ] + } + }, "/cronjobs/next": { "post": { "consumes": [ @@ -7184,6 +7637,33 @@ ] } }, + "/cronjobs/script/options": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.ScriptOptions" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load script options", + "tags": [ + "Cronjob" + ] + } + }, "/cronjobs/search": { "post": { "consumes": [ @@ -7326,7 +7806,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.CronjobUpdate" + "$ref": "#/definitions/dto.CronjobOperate" } } ], @@ -7432,6 +7912,51 @@ ] } }, + "/dashboard/app/launcher/show": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SettingUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update app Launcher", + "tags": [ + "Dashboard" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "key", + "value" + ], + "formatEN": "app launcher [key] =\u003e show: [value]", + "formatZH": "首页应用 [key] =\u003e 显示:[value]", + "paramKeys": [] + } + } + }, "/dashboard/base/:ioOption/:netOption": { "get": { "consumes": [ @@ -7569,6 +8094,72 @@ ] } }, + "/dashboard/quick/change": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ChangeQuicks" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update quick jump", + "tags": [ + "Dashboard" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "change quick jump", + "formatZH": "切换快速跳转", + "paramKeys": [] + } + } + }, + "/dashboard/quick/option": { + "post": { + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "Array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load quick jump options", + "tags": [ + "Dashboard" + ] + } + }, "/dashboard/system/restart/:operation": { "post": { "consumes": [ @@ -8860,7 +9451,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.OperationWithName" + "$ref": "#/definitions/dto.LoadRedisStatus" } } ], @@ -9003,7 +9594,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.OperationWithName" + "$ref": "#/definitions/dto.LoadRedisStatus" } } ], @@ -9083,7 +9674,7 @@ "name": "request", "required": true, "schema": { - "$ref": "#/definitions/dto.OperationWithName" + "$ref": "#/definitions/dto.LoadRedisStatus" } } ], @@ -9344,6 +9935,182 @@ ] } }, + "/disks": { + "get": { + "description": "Get information about all disks including partitioned and unpartitioned disks", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.CompleteDiskInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get complete disk information", + "tags": [ + "Disk Management" + ] + } + }, + "/disks/mount": { + "post": { + "consumes": [ + "application/json" + ], + "description": "Mount partition to specified mount point", + "parameters": [ + { + "description": "mount request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DiskMountRequest" + } + } + ], + "responses": { + "200": { + "description": "Disk mounted successfully", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Mount disk", + "tags": [ + "Disk Management" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "device", + "mountPoint" + ], + "formatEN": "Mount disk [device] to [mountPoint]", + "formatZH": "挂载磁盘 [device] 到 [mountPoint]", + "paramKeys": [] + } + } + }, + "/disks/partition": { + "post": { + "consumes": [ + "application/json" + ], + "description": "Create partition and format disk with specified filesystem", + "parameters": [ + { + "description": "partition request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DiskPartitionRequest" + } + } + ], + "responses": { + "200": { + "description": "Partition created successfully", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Partition disk", + "tags": [ + "Disk Management" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "device", + "filesystem", + "mountPoint" + ], + "formatEN": "Partition disk [device] with filesystem [filesystem], mount point [mountPoint]", + "formatZH": "对磁盘 [device] 进行分区,文件系统 [filesystem],挂载点 [mountPoint]", + "paramKeys": [] + } + } + }, + "/disks/unmount": { + "post": { + "consumes": [ + "application/json" + ], + "description": "Unmount partition from mount point", + "parameters": [ + { + "description": "unmount request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DiskUnmountRequest" + } + } + ], + "responses": { + "200": { + "description": "Disk unmounted successfully", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Unmount disk", + "tags": [ + "Disk Management" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "device", + "mountPoint" + ], + "formatEN": "Unmount disk [device] from [mountPoint]", + "formatZH": "卸载磁盘 [device] 从 [mountPoint]", + "paramKeys": [] + } + } + }, "/files": { "post": { "consumes": [ @@ -9388,6 +10155,47 @@ } } }, + "/files/batch/check": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.FilePathsCheck" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/response.ExistFileInfo" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Batch check file exist", + "tags": [ + "File" + ] + } + }, "/files/batch/del": { "post": { "consumes": [ @@ -9770,6 +10578,56 @@ } } }, + "/files/depth/size": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.DirSizeReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/response.DepthDirSizeRes" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Multi file size", + "tags": [ + "File" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "path" + ], + "formatEN": "Multi file size [path]", + "formatZH": "获取目录及其第一层子目录文件夹大小 [path]", + "paramKeys": [] + } + } + }, "/files/download": { "get": { "consumes": [ @@ -10489,10 +11347,11 @@ "x-panel-log": { "BeforeFunctions": [], "bodyKeys": [ - "path" + "path", + "file" ], - "formatEN": "Upload file [path]", - "formatZH": "上传文件 [path]", + "formatEN": "Upload file [path]/[file]", + "formatZH": "上传文件 [path]/[file]", "paramKeys": [] } } @@ -10584,7 +11443,235 @@ } } }, - "/host/conffile/update": { + "/groups": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.GroupCreate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create group", + "tags": [ + "System Group" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name", + "type" + ], + "formatEN": "create group [name][type]", + "formatZH": "创建组 [name][type]", + "paramKeys": [] + } + } + }, + "/groups/del": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.OperateByID" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete group", + "tags": [ + "System Group" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "groups", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "name", + "output_value": "name" + }, + { + "db": "groups", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "type", + "output_value": "type" + } + ], + "bodyKeys": [ + "id" + ], + "formatEN": "delete group [type][name]", + "formatZH": "删除组 [type][name]", + "paramKeys": [] + } + } + }, + "/groups/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.GroupSearch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "items": { + "$ref": "#/definitions/dto.OperateByType" + }, + "type": "array" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "List groups", + "tags": [ + "System Group" + ] + } + }, + "/groups/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.GroupUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update group", + "tags": [ + "System Group" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name", + "type" + ], + "formatEN": "update group [name][type]", + "formatZH": "更新组 [name][type]", + "paramKeys": [] + } + } + }, + "/hosts/components/{name}": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "Component name to check (e.g., rsync, docker)", + "in": "query", + "name": "name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.ComponentInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Check if a system component exists", + "tags": [ + "Host" + ] + } + }, + "/hosts/conffile/update": { "post": { "consumes": [ "application/json" @@ -10626,589 +11713,6 @@ } } }, - "/host/ssh/conf": { - "get": { - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH conf", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/generate": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GenerateSSH" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Generate host SSH secret", - "tags": [ - "SSH" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [], - "formatEN": "generate SSH secret", - "formatZH": "生成 SSH 密钥 ", - "paramKeys": [] - } - } - }, - "/host/ssh/log": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SearchSSHLog" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.SSHLog" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH logs", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/operate": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.Operate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Operate SSH", - "tags": [ - "SSH" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operation" - ], - "formatEN": "[operation] SSH", - "formatZH": "[operation] SSH ", - "paramKeys": [] - } - } - }, - "/host/ssh/search": { - "post": { - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.SSHInfo" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH setting info", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/secret": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.GenerateLoad" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load host SSH secret", - "tags": [ - "SSH" - ] - } - }, - "/host/ssh/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SSHUpdate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update host SSH setting", - "tags": [ - "SSH" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "key", - "value" - ], - "formatEN": "update SSH setting [key] =\u003e [value]", - "formatZH": "修改 SSH 配置 [key] =\u003e [value]", - "paramKeys": [] - } - } - }, - "/host/tool": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.HostToolRes" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get tool status", - "tags": [ - "Host tool" - ] - } - }, - "/host/tool/config": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolConfig" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.HostToolConfig" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get tool config", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate" - ], - "formatEN": "[operate] tool config", - "formatZH": "[operate] 主机工具配置文件 ", - "paramKeys": [] - } - } - }, - "/host/tool/create": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolCreate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Create Host tool Config", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "type" - ], - "formatEN": "create [type] config", - "formatZH": "创建 [type] 配置", - "paramKeys": [] - } - } - }, - "/host/tool/log": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolLogReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get tool logs", - "tags": [ - "Host tool" - ] - } - }, - "/host/tool/operate": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.HostToolReq" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Operate tool", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate", - "type" - ], - "formatEN": "[operate] [type]", - "formatZH": "[operate] [type] ", - "paramKeys": [] - } - } - }, - "/host/tool/supervisor/process": { - "get": { - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/response.SupervisorProcessConfig" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get Supervisor process config", - "tags": [ - "Host tool" - ] - }, - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.SupervisorProcessConfig" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Create Supervisor process", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate" - ], - "formatEN": "[operate] process", - "formatZH": "[operate] 守护进程 ", - "paramKeys": [] - } - } - }, - "/host/tool/supervisor/process/file": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/request.SupervisorProcessFileReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Get Supervisor process config file", - "tags": [ - "Host tool" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "operate" - ], - "formatEN": "[operate] Supervisor Process Config file", - "formatZH": "[operate] Supervisor 进程文件 ", - "paramKeys": [] - } - } - }, "/hosts/firewall/base": { "get": { "responses": { @@ -11721,6 +12225,697 @@ } } }, + "/hosts/ssh/cert": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.CreateRootCert" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Generate host SSH secret", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "generate SSH secret", + "formatZH": "生成 SSH 密钥 ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/cert/delete": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ForceDelete" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete host SSH secret", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "delete SSH secret", + "formatZH": "删除 SSH 密钥 ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/cert/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchWithPage" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.PageResult" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH secret", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/cert/sync": { + "post": { + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Sycn host SSH secret", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [], + "formatEN": "sync SSH secret", + "formatZH": "同步 SSH 密钥 ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/conf": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH conf", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/log": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchSSHLog" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.PageResult" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH logs", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/log/export": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SearchSSHLog" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Export host SSH logs", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/operate": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.Operate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate SSH", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operation" + ], + "formatEN": "[operation] SSH", + "formatZH": "[operation] SSH ", + "paramKeys": [] + } + } + }, + "/hosts/ssh/search": { + "post": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.SSHInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load host SSH setting info", + "tags": [ + "SSH" + ] + } + }, + "/hosts/ssh/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SSHUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update host SSH setting", + "tags": [ + "SSH" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "key", + "value" + ], + "formatEN": "update SSH setting [key] =\u003e [value]", + "formatZH": "修改 SSH 配置 [key] =\u003e [value]", + "paramKeys": [] + } + } + }, + "/hosts/tool": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.HostToolRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get tool status", + "tags": [ + "Host tool" + ] + } + }, + "/hosts/tool/config": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolConfig" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.HostToolConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get tool config", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate" + ], + "formatEN": "[operate] tool config", + "formatZH": "[operate] 主机工具配置文件 ", + "paramKeys": [] + } + } + }, + "/hosts/tool/create": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolCreate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create Host tool Config", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "type" + ], + "formatEN": "create [type] config", + "formatZH": "创建 [type] 配置", + "paramKeys": [] + } + } + }, + "/hosts/tool/log": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolLogReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get tool logs", + "tags": [ + "Host tool" + ] + } + }, + "/hosts/tool/operate": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.HostToolReq" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate tool", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate", + "type" + ], + "formatEN": "[operate] [type]", + "formatZH": "[operate] [type] ", + "paramKeys": [] + } + } + }, + "/hosts/tool/supervisor/process": { + "get": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.SupervisorProcessConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get Supervisor process config", + "tags": [ + "Host tool" + ] + }, + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.SupervisorProcessConfig" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create Supervisor process", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate" + ], + "formatEN": "[operate] process", + "formatZH": "[operate] 守护进程 ", + "paramKeys": [] + } + } + }, + "/hosts/tool/supervisor/process/file": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.SupervisorProcessFileReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get Supervisor process config file", + "tags": [ + "Host tool" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "operate" + ], + "formatEN": "[operate] Supervisor Process Config file", + "formatZH": "[operate] Supervisor 进程文件 ", + "paramKeys": [] + } + } + }, "/installed/delete/check/:id": { "get": { "consumes": [ @@ -11751,30 +12946,6 @@ ] } }, - "/logs/system": { - "post": { - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load system logs", - "tags": [ - "Logs" - ] - } - }, "/logs/system/files": { "get": { "responses": { @@ -11864,6 +13035,308 @@ ] } }, + "/mcp/domain/bind": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpBindDomain" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Bind Domain for mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/domain/get": { + "get": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.McpBindDomainRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get bin Domain for mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/domain/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpBindDomainUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update bind Domain for mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/search": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerSearch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.McpServersRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "List mcp servers", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerCreate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Create mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server/del": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerDelete" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Delete mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server/op": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mcp/server/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.McpServerUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update mcp server", + "tags": [ + "McpServer" + ] + } + }, + "/mount": { + "post": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.DiskInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "system mount", + "tags": [ + "File" + ] + } + }, "/openresty": { "get": { "responses": { @@ -11972,6 +13445,63 @@ } } }, + "/openresty/https": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.NginxConfigRes" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get default HTTPs status", + "tags": [ + "OpenResty" + ] + }, + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.NginxOperateReq" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate default HTTPs", + "tags": [ + "OpenResty" + ] + } + }, "/openresty/module/update": { "post": { "consumes": [ @@ -12197,6 +13727,39 @@ } } }, + "/process/{pid}": { + "get": { + "parameters": [ + { + "description": "PID", + "in": "path", + "name": "pid", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/websocket.PsProcessData" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get Process Info By PID", + "tags": [ + "Process" + ] + } + }, "/record/del": { "post": { "consumes": [ @@ -12663,6 +14226,77 @@ ] } }, + "/runtimes/php/container/:id": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "path", + "name": "id", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/request.PHPContainerConfig" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get PHP container config", + "tags": [ + "Runtime" + ] + } + }, + "/runtimes/php/container/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.PHPContainerConfig" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update PHP container config", + "tags": [ + "Runtime" + ] + } + }, "/runtimes/php/extensions": { "post": { "consumes": [ @@ -12985,6 +14619,43 @@ ] } }, + "/runtimes/php/fpm/status/:id": { + "get": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "path", + "name": "id", + "required": true, + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "additionalProperties": true, + "type": "object" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Get PHP runtime status", + "tags": [ + "Runtime" + ] + } + }, "/runtimes/php/update": { "post": { "consumes": [ @@ -13038,6 +14709,41 @@ } } }, + "/runtimes/remark": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.RuntimeRemark" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update runtime remark", + "tags": [ + "Runtime" + ] + } + }, "/runtimes/search": { "post": { "consumes": [ @@ -13253,272 +14959,6 @@ } } }, - "/script": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ScriptOperate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Add script", - "tags": [ - "ScriptLibrary" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "name" - ], - "formatEN": "add script [name]", - "formatZH": "添加脚本库脚本 [name]", - "paramKeys": [] - } - } - }, - "/script/del": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.OperateByIDs" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Delete script", - "tags": [ - "ScriptLibrary" - ], - "x-panel-log": { - "BeforeFunctions": [ - { - "db": "script_librarys", - "input_column": "id", - "input_value": "ids", - "isList": true, - "output_column": "name", - "output_value": "names" - } - ], - "bodyKeys": [ - "ids" - ], - "formatEN": "delete script [names]", - "formatZH": "删除脚本库脚本 [names]", - "paramKeys": [] - } - } - }, - "/script/search": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.SearchPageWithGroup" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/dto.PageResult" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Page script", - "tags": [ - "ScriptLibrary" - ] - } - }, - "/script/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ScriptOperate" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update script", - "tags": [ - "ScriptLibrary" - ], - "x-panel-log": { - "BeforeFunctions": [ - { - "db": "cronjobs", - "input_column": "id", - "input_value": "id", - "isList": false, - "output_column": "name", - "output_value": "name" - } - ], - "bodyKeys": [ - "id" - ], - "formatEN": "update script [name]", - "formatZH": "更新脚本库脚本 [name]", - "paramKeys": [] - } - } - }, - "/settings/api/config/generate/key": { - "post": { - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "generate api key", - "tags": [ - "System Setting" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [], - "formatEN": "generate api key", - "formatZH": "生成 API 接口密钥", - "paramKeys": [] - } - } - }, - "/settings/api/config/update": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ApiInterfaceConfig" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Update api config", - "tags": [ - "System Setting" - ], - "x-panel-log": { - "BeforeFunctions": [], - "bodyKeys": [ - "ipWhiteList" - ], - "formatEN": "update api config =\u003e IP White List: [ipWhiteList]", - "formatZH": "更新 API 接口配置 =\u003e IP 白名单: [ipWhiteList]", - "paramKeys": [] - } - } - }, "/settings/basedir": { "get": { "responses": { @@ -13543,6 +14983,39 @@ ] } }, + "/settings/get/{key}": { + "get": { + "parameters": [ + { + "description": "key", + "in": "path", + "name": "key", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.SettingInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load system setting by key", + "tags": [ + "System Setting" + ] + } + }, "/settings/search": { "post": { "responses": { @@ -14006,6 +15479,75 @@ ] } }, + "/settings/ssh": { + "post": { + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Save local conn info", + "tags": [ + "System Setting" + ] + } + }, + "/settings/ssh/check/info": { + "post": { + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "bool" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Check local conn info", + "tags": [ + "System Setting" + ] + } + }, + "/settings/ssh/conn": { + "get": { + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/dto.SSHConnData" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Load local conn", + "tags": [ + "System Setting" + ] + } + }, "/settings/update": { "post": { "consumes": [ @@ -14399,44 +15941,6 @@ } } }, - "/toolbox/clam/record/log": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ClamLogReq" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "string" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "Load clam record detail", - "tags": [ - "Clam" - ] - } - }, "/toolbox/clam/record/search": { "post": { "consumes": [ @@ -15595,6 +17099,33 @@ } } }, + "/user/group": { + "post": { + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.UserGroupResponse" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "system user and group", + "tags": [ + "File" + ] + } + }, "/websites": { "post": { "consumes": [ @@ -15939,6 +17470,62 @@ ] } }, + "/websites/acme/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.WebsiteAcmeAccountUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.WebsiteAcmeAccountDTO" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update website acme account", + "tags": [ + "Website Acme" + ], + "x-panel-log": { + "BeforeFunctions": [ + { + "db": "website_acme_accounts", + "input_column": "id", + "input_value": "id", + "isList": false, + "output_column": "email", + "output_value": "email" + } + ], + "bodyKeys": [ + "id" + ], + "formatEN": "Update acme [email]", + "formatZH": "更新 acme [email]", + "paramKeys": [] + } + } + }, "/websites/auths": { "post": { "consumes": [ @@ -16550,6 +18137,41 @@ } } }, + "/websites/crosssite": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.CrossSiteAccessOp" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Operate Cross Site Access", + "tags": [ + "Website" + ] + } + }, "/websites/databases": { "get": { "consumes": [ @@ -17303,6 +18925,41 @@ } } }, + "/websites/exec/composer": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.ExecComposerReq" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Exec Composer", + "tags": [ + "Website" + ] + } + }, "/websites/lbs": { "get": { "consumes": [ @@ -19180,6 +20837,9 @@ "crossVersionUpdate": { "type": "boolean" }, + "deprecated": { + "type": "number" + }, "description": { "$ref": "#/definitions/dto.Locale" }, @@ -19322,6 +20982,9 @@ "type": "string" }, "type": "array" + }, + "taskID": { + "type": "string" } }, "required": [ @@ -19406,7 +21069,11 @@ "enum": [ "mysql", "mariadb", - "postgresql" + "postgresql", + "redis", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" }, @@ -19422,6 +21089,21 @@ ], "type": "object" }, + "dto.ChangeGroup": { + "properties": { + "groupID": { + "type": "integer" + }, + "id": { + "type": "integer" + } + }, + "required": [ + "groupID", + "id" + ], + "type": "object" + }, "dto.ChangePasswd": { "properties": { "passwd": { @@ -19433,6 +21115,17 @@ }, "type": "object" }, + "dto.ChangeQuicks": { + "properties": { + "quicks": { + "items": { + "$ref": "#/definitions/dto.QuickJump" + }, + "type": "array" + } + }, + "type": "object" + }, "dto.ChangeRedisPass": { "properties": { "database": { @@ -19475,6 +21168,9 @@ "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, @@ -19512,9 +21208,6 @@ }, "removeInfected": { "type": "boolean" - }, - "removeRecord": { - "type": "boolean" } }, "required": [ @@ -19536,20 +21229,6 @@ ], "type": "object" }, - "dto.ClamLogReq": { - "properties": { - "clamName": { - "type": "string" - }, - "recordName": { - "type": "string" - }, - "tail": { - "type": "string" - } - }, - "type": "object" - }, "dto.ClamLogSearch": { "properties": { "clamID": { @@ -19566,6 +21245,9 @@ }, "startTime": { "type": "string" + }, + "status": { + "type": "string" } }, "required": [ @@ -19579,6 +21261,9 @@ "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, @@ -19700,6 +21385,9 @@ }, "dto.CommonBackup": { "properties": { + "description": { + "type": "string" + }, "detailName": { "type": "string" }, @@ -19722,7 +21410,10 @@ "mariadb", "redis", "website", - "postgresql" + "postgresql", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" } @@ -19762,7 +21453,10 @@ "mariadb", "redis", "website", - "postgresql" + "postgresql", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" } @@ -19812,6 +21506,9 @@ }, "dto.ComposeOperation": { "properties": { + "force": { + "type": "boolean" + }, "name": { "type": "string" }, @@ -19819,6 +21516,7 @@ "enum": [ "up", "start", + "restart", "stop", "down", "delete" @@ -19933,6 +21631,9 @@ }, "pause": { "type": "boolean" + }, + "taskID": { + "type": "string" } }, "required": [ @@ -20128,6 +21829,17 @@ ], "type": "object" }, + "dto.ContainerOptions": { + "properties": { + "name": { + "type": "string" + }, + "state": { + "type": "string" + } + }, + "type": "object" + }, "dto.ContainerPrune": { "properties": { "pruneType": { @@ -20140,6 +21852,9 @@ ], "type": "string" }, + "taskID": { + "type": "string" + }, "withTagAll": { "type": "boolean" } @@ -20149,17 +21864,6 @@ ], "type": "object" }, - "dto.ContainerPruneReport": { - "properties": { - "deletedNumber": { - "type": "integer" - }, - "spaceReclaimed": { - "type": "integer" - } - }, - "type": "object" - }, "dto.ContainerRename": { "properties": { "name": { @@ -20265,8 +21969,11 @@ "image": { "type": "string" }, - "name": { - "type": "string" + "names": { + "items": { + "type": "string" + }, + "type": "array" }, "taskID": { "type": "string" @@ -20274,7 +21981,42 @@ }, "required": [ "image", - "name" + "names" + ], + "type": "object" + }, + "dto.CreateRootCert": { + "properties": { + "description": { + "type": "string" + }, + "encryptionMode": { + "enum": [ + "rsa", + "ed25519", + "ecdsa", + "dsa" + ], + "type": "string" + }, + "mode": { + "type": "string" + }, + "name": { + "type": "string" + }, + "passPhrase": { + "type": "string" + }, + "privateKey": { + "type": "string" + }, + "publicKey": { + "type": "string" + } + }, + "required": [ + "encryptionMode" ], "type": "object" }, @@ -20283,6 +22025,9 @@ "cleanData": { "type": "boolean" }, + "cleanRemoteData": { + "type": "boolean" + }, "ids": { "items": { "type": "integer" @@ -20300,6 +22045,9 @@ "cleanData": { "type": "boolean" }, + "cleanRemoteData": { + "type": "boolean" + }, "cronjobID": { "type": "integer" }, @@ -20312,11 +22060,25 @@ ], "type": "object" }, - "dto.CronjobCreate": { + "dto.CronjobImport": { + "properties": { + "cronjobs": { + "items": { + "$ref": "#/definitions/dto.CronjobTrans" + }, + "type": "array" + } + }, + "type": "object" + }, + "dto.CronjobOperate": { "properties": { "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, @@ -20344,6 +22106,15 @@ "executor": { "type": "string" }, + "groupID": { + "type": "integer" + }, + "id": { + "type": "integer" + }, + "ignoreErr": { + "type": "boolean" + }, "isDir": { "type": "boolean" }, @@ -20354,15 +22125,25 @@ "minimum": 1, "type": "integer" }, + "retryTimes": { + "minimum": 0, + "type": "integer" + }, "script": { "type": "string" }, + "scriptID": { + "type": "integer" + }, "scriptMode": { "type": "string" }, "secret": { "type": "string" }, + "snapshotRule": { + "$ref": "#/definitions/dto.SnapshotRule" + }, "sourceAccountIDs": { "type": "string" }, @@ -20375,6 +22156,10 @@ "specCustom": { "type": "boolean" }, + "timeout": { + "minimum": 1, + "type": "integer" + }, "type": { "type": "string" }, @@ -20395,21 +22180,6 @@ ], "type": "object" }, - "dto.CronjobDownload": { - "properties": { - "backupAccountID": { - "type": "integer" - }, - "recordID": { - "type": "integer" - } - }, - "required": [ - "backupAccountID", - "recordID" - ], - "type": "object" - }, "dto.CronjobSpec": { "properties": { "spec": { @@ -20421,16 +22191,22 @@ ], "type": "object" }, - "dto.CronjobUpdate": { + "dto.CronjobTrans": { "properties": { "alertCount": { "type": "integer" }, + "alertMethod": { + "type": "string" + }, "alertTitle": { "type": "string" }, - "appID": { - "type": "string" + "apps": { + "items": { + "$ref": "#/definitions/dto.TransHelper" + }, + "type": "array" }, "command": { "type": "string" @@ -20439,13 +22215,16 @@ "type": "string" }, "dbName": { - "type": "string" + "items": { + "$ref": "#/definitions/dto.TransHelper" + }, + "type": "array" }, "dbType": { "type": "string" }, - "downloadAccountID": { - "type": "integer" + "downloadAccount": { + "type": "string" }, "exclusionRules": { "type": "string" @@ -20453,9 +22232,12 @@ "executor": { "type": "string" }, - "id": { + "groupID": { "type": "integer" }, + "ignoreErr": { + "type": "boolean" + }, "isDir": { "type": "boolean" }, @@ -20463,7 +22245,9 @@ "type": "string" }, "retainCopies": { - "minimum": 1, + "type": "integer" + }, + "retryTimes": { "type": "integer" }, "script": { @@ -20472,11 +22256,20 @@ "scriptMode": { "type": "string" }, + "scriptName": { + "type": "string" + }, "secret": { "type": "string" }, - "sourceAccountIDs": { - "type": "string" + "snapshotRule": { + "$ref": "#/definitions/dto.SnapshotTransHelper" + }, + "sourceAccounts": { + "items": { + "type": "string" + }, + "type": "array" }, "sourceDir": { "type": "string" @@ -20487,6 +22280,9 @@ "specCustom": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -20496,16 +22292,13 @@ "user": { "type": "string" }, - "website": { - "type": "string" + "websites": { + "items": { + "type": "string" + }, + "type": "array" } }, - "required": [ - "id", - "name", - "spec", - "type" - ], "type": "object" }, "dto.CronjobUpdateStatus": { @@ -20550,7 +22343,10 @@ "mysql", "mariadb", "postgresql", - "redis" + "redis", + "mysql-cluster", + "postgresql-cluster", + "redis-cluster" ], "type": "string" } @@ -20587,12 +22383,6 @@ "ipv6": { "type": "boolean" }, - "isActive": { - "type": "boolean" - }, - "isExist": { - "type": "boolean" - }, "isSwarm": { "type": "boolean" }, @@ -20672,6 +22462,12 @@ "platformVersion": { "type": "string" }, + "quickJump": { + "items": { + "$ref": "#/definitions/dto.QuickJump" + }, + "type": "array" + }, "systemProxy": { "type": "string" }, @@ -20743,6 +22539,15 @@ "memoryAvailable": { "type": "integer" }, + "memoryCache": { + "type": "integer" + }, + "memoryFree": { + "type": "integer" + }, + "memoryShard": { + "type": "integer" + }, "memoryTotal": { "type": "integer" }, @@ -20869,6 +22674,9 @@ "ssl": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -20947,6 +22755,9 @@ "ssl": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -21069,6 +22880,9 @@ "ssl": { "type": "boolean" }, + "timeout": { + "type": "integer" + }, "type": { "type": "string" }, @@ -21327,6 +23141,9 @@ "enablePing" ], "type": "string" + }, + "withDockerRestart": { + "type": "boolean" } }, "required": [ @@ -21538,43 +23355,6 @@ }, "type": "object" }, - "dto.GenerateLoad": { - "properties": { - "encryptionMode": { - "enum": [ - "rsa", - "ed25519", - "ecdsa", - "dsa" - ], - "type": "string" - } - }, - "required": [ - "encryptionMode" - ], - "type": "object" - }, - "dto.GenerateSSH": { - "properties": { - "encryptionMode": { - "enum": [ - "rsa", - "ed25519", - "ecdsa", - "dsa" - ], - "type": "string" - }, - "password": { - "type": "string" - } - }, - "required": [ - "encryptionMode" - ], - "type": "object" - }, "dto.GroupCreate": { "properties": { "id": { @@ -21675,7 +23455,7 @@ "type": "boolean" }, "size": { - "type": "string" + "type": "integer" }, "tags": { "items": { @@ -21776,14 +23556,12 @@ "type": "integer" }, "password": { - "maxLength": 256, "type": "string" }, "protocol": { "type": "string" }, "username": { - "maxLength": 256, "type": "string" } }, @@ -21838,6 +23616,21 @@ ], "type": "object" }, + "dto.LoadRedisStatus": { + "properties": { + "name": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name", + "type" + ], + "type": "object" + }, "dto.Locale": { "properties": { "en": { @@ -21846,6 +23639,9 @@ "ja": { "type": "string" }, + "ko": { + "type": "string" + }, "ms": { "type": "string" }, @@ -21855,6 +23651,9 @@ "ru": { "type": "string" }, + "tr": { + "type": "string" + }, "zh": { "type": "string" }, @@ -22033,7 +23832,8 @@ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" } @@ -22056,7 +23856,8 @@ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" } @@ -22122,7 +23923,8 @@ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" } @@ -22331,7 +24133,8 @@ "type": { "enum": [ "mysql", - "mariadb" + "mariadb", + "mysql-cluster" ], "type": "string" }, @@ -22648,6 +24451,17 @@ ], "type": "object" }, + "dto.OperateByIDs": { + "properties": { + "ids": { + "items": { + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "dto.OperateByType": { "properties": { "type": { @@ -22770,6 +24584,12 @@ }, "dto.PageCronjob": { "properties": { + "groupIDs": { + "items": { + "type": "integer" + }, + "type": "array" + }, "info": { "type": "string" }, @@ -22804,6 +24624,43 @@ ], "type": "object" }, + "dto.PageImage": { + "properties": { + "name": { + "type": "string" + }, + "order": { + "enum": [ + "null", + "ascending", + "descending" + ], + "type": "string" + }, + "orderBy": { + "enum": [ + "size", + "tags", + "createdAt", + "isUsed" + ], + "type": "string" + }, + "page": { + "type": "integer" + }, + "pageSize": { + "type": "integer" + } + }, + "required": [ + "order", + "orderBy", + "page", + "pageSize" + ], + "type": "object" + }, "dto.PageInfo": { "properties": { "page": { @@ -23015,7 +24872,8 @@ }, "type": { "enum": [ - "postgresql" + "postgresql", + "postgresql-cluster" ], "type": "string" } @@ -23037,7 +24895,8 @@ }, "type": { "enum": [ - "postgresql" + "postgresql", + "postgresql-cluster" ], "type": "string" } @@ -23102,7 +24961,8 @@ }, "type": { "enum": [ - "postgresql" + "postgresql", + "postgresql-cluster" ], "type": "string" } @@ -23114,6 +24974,32 @@ ], "type": "object" }, + "dto.QuickJump": { + "properties": { + "detail": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "isShow": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "recommend": { + "type": "integer" + }, + "router": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, "dto.RecordFileSize": { "properties": { "id": { @@ -23215,6 +25101,13 @@ "database": { "type": "string" }, + "dbType": { + "enum": [ + "redis", + "redis-cluster" + ], + "type": "string" + }, "save": { "type": "string" }, @@ -23228,6 +25121,7 @@ }, "required": [ "database", + "dbType", "type" ], "type": "object" @@ -23237,6 +25131,13 @@ "database": { "type": "string" }, + "dbType": { + "enum": [ + "redis", + "redis-cluster" + ], + "type": "string" + }, "maxclients": { "type": "string" }, @@ -23248,7 +25149,8 @@ } }, "required": [ - "database" + "database", + "dbType" ], "type": "object" }, @@ -23369,36 +25271,41 @@ }, "type": "object" }, - "dto.SSHHistory": { + "dto.SSHConnData": { "properties": { - "address": { - "type": "string" - }, - "area": { + "addr": { "type": "string" }, "authMode": { + "enum": [ + "password", + "key" + ], "type": "string" }, - "date": { + "passPhrase": { "type": "string" }, - "dateStr": { - "type": "string" - }, - "message": { + "password": { "type": "string" }, "port": { - "type": "string" + "maximum": 65535, + "minimum": 1, + "type": "integer" }, - "status": { + "privateKey": { "type": "string" }, "user": { "type": "string" } }, + "required": [ + "addr", + "port", + "user" + ], "type": "object" }, "dto.SSHInfo": { @@ -23406,6 +25313,9 @@ "autoStart": { "type": "boolean" }, + "currentUser": { + "type": "string" + }, "isActive": { "type": "boolean" }, @@ -23436,26 +25346,6 @@ }, "type": "object" }, - "dto.SSHLog": { - "properties": { - "failedCount": { - "type": "integer" - }, - "logs": { - "items": { - "$ref": "#/definitions/dto.SSHHistory" - }, - "type": "array" - }, - "successfulCount": { - "type": "integer" - }, - "totalCount": { - "type": "integer" - } - }, - "type": "object" - }, "dto.SSHUpdate": { "properties": { "key": { @@ -23473,6 +25363,17 @@ ], "type": "object" }, + "dto.ScriptOptions": { + "properties": { + "id": { + "type": "integer" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, "dto.SearchByFilter": { "properties": { "filter": { @@ -23712,7 +25613,7 @@ "ntpSite": { "type": "string" }, - "snapshotIgnore": { + "systemIP": { "type": "string" }, "systemVersion": { @@ -23779,6 +25680,12 @@ "id": { "type": "integer" }, + "ignoreFiles": { + "items": { + "type": "string" + }, + "type": "array" + }, "interruptStep": { "type": "string" }, @@ -23800,6 +25707,12 @@ "taskID": { "type": "string" }, + "timeout": { + "type": "integer" + }, + "withDockerConf": { + "type": "boolean" + }, "withLoginLog": { "type": "boolean" }, @@ -23836,12 +25749,21 @@ }, "type": "array" }, + "ignoreFiles": { + "items": { + "type": "string" + }, + "type": "array" + }, "panelData": { "items": { "$ref": "#/definitions/dto.DataTree" }, "type": "array" }, + "withDockerConf": { + "type": "boolean" + }, "withLoginLog": { "type": "boolean" }, @@ -23901,6 +25823,34 @@ ], "type": "object" }, + "dto.SnapshotRule": { + "properties": { + "ignoreAppIDs": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "withImage": { + "type": "boolean" + } + }, + "type": "object" + }, + "dto.SnapshotTransHelper": { + "properties": { + "ignoreApps": { + "items": { + "$ref": "#/definitions/dto.TransHelper" + }, + "type": "array" + }, + "withImage": { + "type": "boolean" + } + }, + "type": "object" + }, "dto.SwapHelper": { "properties": { "isNew": { @@ -23938,6 +25888,17 @@ }, "type": "object" }, + "dto.TransHelper": { + "properties": { + "detailName": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, "dto.UpdateByFile": { "properties": { "file": { @@ -24002,6 +25963,17 @@ ], "type": "object" }, + "dto.UploadForRecover": { + "properties": { + "filePath": { + "type": "string" + }, + "targetDir": { + "type": "string" + } + }, + "type": "object" + }, "dto.VolumeCreate": { "properties": { "driver": { @@ -24232,6 +26204,29 @@ }, "type": "object" }, + "model.AppIgnoreUpgrade": { + "properties": { + "appDetailID": { + "type": "integer" + }, + "appID": { + "type": "integer" + }, + "createdAt": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "scope": { + "type": "string" + }, + "updatedAt": { + "type": "string" + } + }, + "type": "object" + }, "model.AppInstall": { "properties": { "app": { @@ -24258,6 +26253,9 @@ "env": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "httpPort": { "type": "integer" }, @@ -24361,6 +26359,9 @@ "port": { "type": "string" }, + "remark": { + "type": "string" + }, "resource": { "type": "string" }, @@ -24420,6 +26421,9 @@ "expireDate": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "ftpId": { "type": "integer" }, @@ -24485,6 +26489,9 @@ }, "model.WebsiteAcmeAccount": { "properties": { + "caDirURL": { + "type": "string" + }, "createdAt": { "type": "string" }, @@ -24511,6 +26518,9 @@ }, "url": { "type": "string" + }, + "useProxy": { + "type": "boolean" } }, "type": "object" @@ -24611,6 +26621,9 @@ "keyType": { "type": "string" }, + "masterSslId": { + "type": "integer" + }, "message": { "type": "string" }, @@ -24620,6 +26633,9 @@ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "organization": { "type": "string" }, @@ -24638,6 +26654,9 @@ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -24679,6 +26698,28 @@ ], "type": "object" }, + "request.AppIgnoreUpgradeReq": { + "properties": { + "appDetailID": { + "type": "integer" + }, + "appID": { + "type": "integer" + }, + "scope": { + "enum": [ + "all", + "version" + ], + "type": "string" + } + }, + "required": [ + "appID", + "scope" + ], + "type": "object" + }, "request.AppInstallCreate": { "properties": { "advanced": { @@ -24724,12 +26765,24 @@ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, "services": { "additionalProperties": { "type": "string" }, "type": "object" }, + "specifyIP": { + "type": "string" + }, "taskID": { "type": "string" }, @@ -24746,25 +26799,6 @@ ], "type": "object" }, - "request.AppInstalledIgnoreUpgrade": { - "properties": { - "detailID": { - "type": "integer" - }, - "operate": { - "enum": [ - "cancel", - "ignore" - ], - "type": "string" - } - }, - "required": [ - "detailID", - "operate" - ], - "type": "object" - }, "request.AppInstalledInfo": { "properties": { "key": { @@ -24802,6 +26836,9 @@ "dockerCompose": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "forceDelete": { "type": "boolean" }, @@ -24905,6 +26942,18 @@ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, + "specifyIP": { + "type": "string" + }, "type": { "type": "string" }, @@ -24954,14 +27003,6 @@ ], "type": "object" }, - "request.AppstoreUpdate": { - "properties": { - "defaultDomain": { - "type": "string" - } - }, - "type": "object" - }, "request.ChangeDatabase": { "properties": { "databaseID": { @@ -24975,8 +27016,25 @@ } }, "required": [ - "databaseID", - "databaseType", + "websiteID" + ], + "type": "object" + }, + "request.CrossSiteAccessOp": { + "properties": { + "operation": { + "enum": [ + "Enable", + "Disable" + ], + "type": "string" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "operation", "websiteID" ], "type": "object" @@ -25013,6 +27071,72 @@ ], "type": "object" }, + "request.DiskMountRequest": { + "properties": { + "autoMount": { + "type": "boolean" + }, + "device": { + "type": "string" + }, + "filesystem": { + "enum": [ + "ext4", + "xfs" + ], + "type": "string" + }, + "mountPoint": { + "type": "string" + } + }, + "required": [ + "device", + "filesystem", + "mountPoint" + ], + "type": "object" + }, + "request.DiskPartitionRequest": { + "properties": { + "autoMount": { + "type": "boolean" + }, + "device": { + "type": "string" + }, + "filesystem": { + "enum": [ + "ext4", + "xfs" + ], + "type": "string" + }, + "label": { + "type": "string" + }, + "mountPoint": { + "type": "string" + } + }, + "required": [ + "device", + "filesystem", + "mountPoint" + ], + "type": "object" + }, + "request.DiskUnmountRequest": { + "properties": { + "mountPoint": { + "type": "string" + } + }, + "required": [ + "mountPoint" + ], + "type": "object" + }, "request.Environment": { "properties": { "key": { @@ -25024,6 +27148,40 @@ }, "type": "object" }, + "request.ExecComposerReq": { + "properties": { + "command": { + "type": "string" + }, + "dir": { + "type": "string" + }, + "extCommand": { + "type": "string" + }, + "mirror": { + "type": "string" + }, + "taskID": { + "type": "string" + }, + "user": { + "type": "string" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "command", + "dir", + "mirror", + "taskID", + "user", + "websiteID" + ], + "type": "object" + }, "request.ExposedPort": { "properties": { "containerPort": { @@ -25254,6 +27412,12 @@ "cover": { "type": "boolean" }, + "coverPaths": { + "items": { + "type": "string" + }, + "type": "array" + }, "name": { "type": "string" }, @@ -25319,6 +27483,9 @@ "properties": { "path": { "type": "string" + }, + "withInit": { + "type": "boolean" } }, "required": [ @@ -25326,6 +27493,20 @@ ], "type": "object" }, + "request.FilePathsCheck": { + "properties": { + "paths": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "paths" + ], + "type": "object" + }, "request.FileReadByLineReq": { "properties": { "ID": { @@ -25532,6 +27713,199 @@ ], "type": "object" }, + "request.McpBindDomain": { + "properties": { + "domain": { + "type": "string" + }, + "ipList": { + "type": "string" + }, + "sslID": { + "type": "integer" + } + }, + "required": [ + "domain" + ], + "type": "object" + }, + "request.McpBindDomainUpdate": { + "properties": { + "ipList": { + "type": "string" + }, + "sslID": { + "type": "integer" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "websiteID" + ], + "type": "object" + }, + "request.McpServerCreate": { + "properties": { + "baseUrl": { + "type": "string" + }, + "command": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "hostIP": { + "type": "string" + }, + "name": { + "type": "string" + }, + "outputTransport": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "ssePath": { + "type": "string" + }, + "streamableHttpPath": { + "type": "string" + }, + "type": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + } + }, + "required": [ + "command", + "name", + "outputTransport", + "port", + "type" + ], + "type": "object" + }, + "request.McpServerDelete": { + "properties": { + "id": { + "type": "integer" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "request.McpServerOperate": { + "properties": { + "id": { + "type": "integer" + }, + "operate": { + "type": "string" + } + }, + "required": [ + "id", + "operate" + ], + "type": "object" + }, + "request.McpServerSearch": { + "properties": { + "name": { + "type": "string" + }, + "page": { + "type": "integer" + }, + "pageSize": { + "type": "integer" + }, + "sync": { + "type": "boolean" + } + }, + "required": [ + "page", + "pageSize" + ], + "type": "object" + }, + "request.McpServerUpdate": { + "properties": { + "baseUrl": { + "type": "string" + }, + "command": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "hostIP": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "outputTransport": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "ssePath": { + "type": "string" + }, + "streamableHttpPath": { + "type": "string" + }, + "type": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + } + }, + "required": [ + "command", + "id", + "name", + "outputTransport", + "port", + "type" + ], + "type": "object" + }, "request.NewAppInstall": { "properties": { "advanced": { @@ -25577,6 +27951,18 @@ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, + "specifyIP": { + "type": "string" + }, "type": { "type": "string" }, @@ -25626,8 +28012,6 @@ } }, "required": [ - "extends", - "return", "websiteID" ], "type": "object" @@ -25762,6 +28146,21 @@ ], "type": "object" }, + "request.NginxOperateReq": { + "properties": { + "operate": { + "enum": [ + "enable", + "disable" + ], + "type": "string" + } + }, + "required": [ + "operate" + ], + "type": "object" + }, "request.NginxPathAuthUpdate": { "properties": { "name": { @@ -26013,6 +28412,38 @@ ], "type": "object" }, + "request.PHPContainerConfig": { + "properties": { + "containerName": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "exposedPorts": { + "items": { + "$ref": "#/definitions/request.ExposedPort" + }, + "type": "array" + }, + "id": { + "type": "integer" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.PHPExtensionInstallReq": { "properties": { "ID": { @@ -26126,6 +28557,12 @@ }, "request.PHPSupervisorProcessConfig": { "properties": { + "autoRestart": { + "type": "string" + }, + "autoStart": { + "type": "string" + }, "command": { "type": "string" }, @@ -26232,6 +28669,17 @@ ], "type": "object" }, + "request.ReqWithID": { + "properties": { + "id": { + "type": "integer" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.RuntimeCreate": { "properties": { "appDetailId": { @@ -26268,6 +28716,9 @@ "additionalProperties": true, "type": "object" }, + "remark": { + "type": "string" + }, "resource": { "type": "string" }, @@ -26311,6 +28762,20 @@ }, "type": "object" }, + "request.RuntimeRemark": { + "properties": { + "id": { + "type": "integer" + }, + "remark": { + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.RuntimeSearch": { "properties": { "name": { @@ -26374,6 +28839,9 @@ "rebuild": { "type": "boolean" }, + "remark": { + "type": "string" + }, "source": { "type": "string" }, @@ -26410,6 +28878,12 @@ }, "request.SupervisorProcessConfig": { "properties": { + "autoRestart": { + "type": "string" + }, + "autoStart": { + "type": "string" + }, "command": { "type": "string" }, @@ -26476,6 +28950,9 @@ }, "request.WebsiteAcmeAccountCreate": { "properties": { + "caDirURL": { + "type": "string" + }, "eabHmacKey": { "type": "string" }, @@ -26501,9 +28978,13 @@ "letsencrypt", "zerossl", "buypass", - "google" + "google", + "custom" ], "type": "string" + }, + "useProxy": { + "type": "boolean" } }, "required": [ @@ -26513,6 +28994,20 @@ ], "type": "object" }, + "request.WebsiteAcmeAccountUpdate": { + "properties": { + "id": { + "type": "integer" + }, + "useProxy": { + "type": "boolean" + } + }, + "required": [ + "id" + ], + "type": "object" + }, "request.WebsiteBatchDelReq": { "properties": { "ids": { @@ -26731,6 +29226,9 @@ "runtimeID": { "type": "integer" }, + "siteDir": { + "type": "string" + }, "taskID": { "type": "string" }, @@ -26756,16 +29254,13 @@ "acmeAccountId": { "type": "integer" }, - "domains": { - "items": { - "type": "string" - }, - "type": "array" + "websiteSSLId": { + "type": "integer" } }, "required": [ "acmeAccountId", - "domains" + "websiteSSLId" ], "type": "object" }, @@ -26929,8 +29424,8 @@ "type": "boolean" }, "hstsIncludeSubDomains": { - "type": "boolean" - }, + "type": "boolean" + }, "http3": { "type": "boolean" }, @@ -27203,6 +29698,12 @@ }, "type": "object" }, + "serverCacheTime": { + "type": "integer" + }, + "serverCacheUnit": { + "type": "string" + }, "sni": { "type": "boolean" } @@ -27323,6 +29824,9 @@ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "otherDomains": { "type": "string" }, @@ -27335,6 +29839,9 @@ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -27354,6 +29861,9 @@ "acmeAccountID": { "type": "string" }, + "domain": { + "type": "string" + }, "page": { "type": "integer" }, @@ -27405,6 +29915,9 @@ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "otherDomains": { "type": "string" }, @@ -27417,6 +29930,9 @@ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -27484,7 +30000,8 @@ "status", "createdAt", "expire_date", - "created_at" + "created_at", + "favorite" ], "type": "string" }, @@ -27494,6 +30011,9 @@ "pageSize": { "type": "integer" }, + "type": { + "type": "string" + }, "websiteGroupId": { "type": "integer" } @@ -27514,6 +30034,9 @@ "expireDate": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "id": { "type": "integer" }, @@ -27608,6 +30131,18 @@ "pullImage": { "type": "boolean" }, + "restartPolicy": { + "enum": [ + "always", + "unless-stopped", + "no", + "on-failure" + ], + "type": "string" + }, + "specifyIP": { + "type": "string" + }, "type": { "type": "string" }, @@ -27744,9 +30279,6 @@ "id": { "type": "integer" }, - "ignoreUpgrade": { - "type": "boolean" - }, "image": { "type": "string" }, @@ -27812,6 +30344,9 @@ }, "version": { "type": "string" + }, + "websiteDir": { + "type": "string" } }, "type": "object" @@ -27883,6 +30418,9 @@ "key": { "type": "string" }, + "label": { + "$ref": "#/definitions/dto.Locale" + }, "labelEn": { "type": "string" }, @@ -27958,9 +30496,44 @@ }, "type": "object" }, - "response.AppstoreConfig": { + "response.CompleteDiskInfo": { "properties": { - "defaultDomain": { + "disks": { + "items": { + "$ref": "#/definitions/response.DiskInfo" + }, + "type": "array" + }, + "systemDisk": { + "$ref": "#/definitions/response.DiskInfo" + }, + "totalCapacity": { + "type": "integer" + }, + "totalDisks": { + "type": "integer" + }, + "unpartitionedDisks": { + "items": { + "$ref": "#/definitions/response.DiskBasicInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "response.ComponentInfo": { + "properties": { + "error": { + "type": "string" + }, + "exists": { + "type": "boolean" + }, + "path": { + "type": "string" + }, + "version": { "type": "string" } }, @@ -27968,6 +30541,12 @@ }, "response.Database": { "properties": { + "databaseName": { + "type": "string" + }, + "from": { + "type": "string" + }, "id": { "type": "integer" }, @@ -28003,6 +30582,17 @@ }, "type": "object" }, + "response.DepthDirSizeRes": { + "properties": { + "path": { + "type": "string" + }, + "size": { + "type": "integer" + } + }, + "type": "object" + }, "response.DirSizeRes": { "properties": { "size": { @@ -28014,6 +30604,120 @@ ], "type": "object" }, + "response.DiskBasicInfo": { + "properties": { + "avail": { + "type": "string" + }, + "device": { + "type": "string" + }, + "diskType": { + "type": "string" + }, + "filesystem": { + "type": "string" + }, + "isMounted": { + "type": "boolean" + }, + "isRemovable": { + "type": "boolean" + }, + "isSystem": { + "type": "boolean" + }, + "model": { + "type": "string" + }, + "mountPoint": { + "type": "string" + }, + "serial": { + "type": "string" + }, + "size": { + "type": "string" + }, + "usePercent": { + "type": "integer" + }, + "used": { + "type": "string" + } + }, + "type": "object" + }, + "response.DiskInfo": { + "properties": { + "avail": { + "type": "string" + }, + "device": { + "type": "string" + }, + "diskType": { + "type": "string" + }, + "filesystem": { + "type": "string" + }, + "isMounted": { + "type": "boolean" + }, + "isRemovable": { + "type": "boolean" + }, + "isSystem": { + "type": "boolean" + }, + "model": { + "type": "string" + }, + "mountPoint": { + "type": "string" + }, + "partitions": { + "items": { + "$ref": "#/definitions/response.DiskBasicInfo" + }, + "type": "array" + }, + "serial": { + "type": "string" + }, + "size": { + "type": "string" + }, + "usePercent": { + "type": "integer" + }, + "used": { + "type": "string" + } + }, + "type": "object" + }, + "response.ExistFileInfo": { + "properties": { + "isDir": { + "type": "boolean" + }, + "modTime": { + "type": "string" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "size": { + "type": "integer" + } + }, + "type": "object" + }, "response.FileInfo": { "properties": { "content": { @@ -28090,9 +30794,6 @@ }, "response.FileLineContent": { "properties": { - "content": { - "type": "string" - }, "end": { "type": "boolean" }, @@ -28105,8 +30806,17 @@ "path": { "type": "string" }, + "scope": { + "type": "string" + }, + "taskStatus": { + "type": "string" + }, "total": { "type": "integer" + }, + "totalLines": { + "type": "integer" } }, "type": "object" @@ -28162,19 +30872,116 @@ }, "type": "object" }, - "response.IgnoredApp": { + "response.McpBindDomainRes": { "properties": { - "detailID": { + "acmeAccountID": { "type": "integer" }, - "icon": { + "allowIPs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "connUrl": { + "type": "string" + }, + "domain": { + "type": "string" + }, + "sslID": { + "type": "integer" + }, + "websiteID": { + "type": "integer" + } + }, + "type": "object" + }, + "response.McpServerDTO": { + "properties": { + "baseUrl": { + "type": "string" + }, + "command": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "dir": { + "type": "string" + }, + "dockerCompose": { + "type": "string" + }, + "env": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/definitions/request.Environment" + }, + "type": "array" + }, + "hostIP": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "message": { "type": "string" }, "name": { "type": "string" }, - "version": { + "outputTransport": { "type": "string" + }, + "port": { + "type": "integer" + }, + "ssePath": { + "type": "string" + }, + "status": { + "type": "string" + }, + "streamableHttpPath": { + "type": "string" + }, + "type": { + "type": "string" + }, + "updatedAt": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "#/definitions/request.Volume" + }, + "type": "array" + }, + "websiteID": { + "type": "integer" + } + }, + "type": "object" + }, + "response.McpServersRes": { + "properties": { + "items": { + "items": { + "$ref": "#/definitions/response.McpServerDTO" + }, + "type": "array" + }, + "total": { + "type": "integer" } }, "type": "object" @@ -28245,6 +31052,14 @@ }, "type": "object" }, + "response.NginxConfigRes": { + "properties": { + "https": { + "type": "boolean" + } + }, + "type": "object" + }, "response.NginxFile": { "properties": { "content": { @@ -28525,6 +31340,9 @@ "codeDir": { "type": "string" }, + "container": { + "type": "string" + }, "containerStatus": { "type": "string" }, @@ -28565,6 +31383,9 @@ "port": { "type": "string" }, + "remark": { + "type": "string" + }, "resource": { "type": "string" }, @@ -28591,6 +31412,12 @@ }, "response.SupervisorProcessConfig": { "properties": { + "autoRestart": { + "type": "string" + }, + "autoStart": { + "type": "string" + }, "command": { "type": "string" }, @@ -28658,8 +31485,39 @@ }, "type": "object" }, + "response.UserGroupResponse": { + "properties": { + "groups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "items": { + "$ref": "#/definitions/response.UserInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "response.UserInfo": { + "properties": { + "group": { + "type": "string" + }, + "username": { + "type": "string" + } + }, + "type": "object" + }, "response.WebsiteAcmeAccountDTO": { "properties": { + "caDirURL": { + "type": "string" + }, "createdAt": { "type": "string" }, @@ -28686,6 +31544,9 @@ }, "url": { "type": "string" + }, + "useProxy": { + "type": "boolean" } }, "type": "object" @@ -28798,6 +31659,9 @@ "expireDate": { "type": "string" }, + "favorite": { + "type": "boolean" + }, "ftpId": { "type": "integer" }, @@ -28810,6 +31674,9 @@ "id": { "type": "integer" }, + "openBaseDir": { + "type": "boolean" + }, "parentWebsiteID": { "type": "integer" }, @@ -28911,8 +31778,8 @@ "type": "boolean" }, "hstsIncludeSubDomains": { - "type": "boolean" - }, + "type": "boolean" + }, "http3": { "type": "boolean" }, @@ -29077,6 +31944,9 @@ "logPath": { "type": "string" }, + "masterSslId": { + "type": "integer" + }, "message": { "type": "string" }, @@ -29086,6 +31956,9 @@ "nameserver2": { "type": "string" }, + "nodes": { + "type": "string" + }, "organization": { "type": "string" }, @@ -29104,6 +31977,9 @@ "pushDir": { "type": "boolean" }, + "pushNode": { + "type": "boolean" + }, "shell": { "type": "string" }, @@ -29130,6 +32006,115 @@ } }, "type": "object" + }, + "websocket.ProcessConnect": { + "properties": { + "PID": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "status": { + "type": "string" + }, + "type": { + "type": "string" + }, + "localaddr": { + "type": "object" + }, + "remoteaddr": { + "type": "object" + } + }, + "type": "object" + }, + "websocket.PsProcessData": { + "properties": { + "PID": { + "type": "integer" + }, + "PPID": { + "type": "integer" + }, + "cmdLine": { + "type": "string" + }, + "connects": { + "items": { + "$ref": "#/definitions/websocket.ProcessConnect" + }, + "type": "array" + }, + "cpuPercent": { + "type": "string" + }, + "cpuValue": { + "type": "number" + }, + "data": { + "type": "string" + }, + "diskRead": { + "type": "string" + }, + "diskWrite": { + "type": "string" + }, + "envs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hwm": { + "type": "string" + }, + "locked": { + "type": "string" + }, + "name": { + "type": "string" + }, + "numConnections": { + "type": "integer" + }, + "numThreads": { + "type": "integer" + }, + "rss": { + "type": "string" + }, + "rssValue": { + "type": "integer" + }, + "stack": { + "type": "string" + }, + "startTime": { + "type": "string" + }, + "status": { + "type": "string" + }, + "swap": { + "type": "string" + }, + "username": { + "type": "string" + }, + "vms": { + "type": "string" + }, + "openFiles": { + "items": { + "type": "object" + }, + "type": "array" + } + }, + "type": "object" } } } \ No newline at end of file