basePath: /api/v1 definitions: dto.AddrRuleOperate: properties: address: type: string operation: enum: - add - remove type: string strategy: enum: - accept - drop type: string required: - address - operation - strategy type: object dto.AddrRuleUpdate: properties: newRule: $ref: '#/definitions/dto.AddrRuleOperate' oldRule: $ref: '#/definitions/dto.AddrRuleOperate' type: object dto.BackupOperate: properties: accessKey: type: string bucket: type: string credential: type: string id: type: integer type: type: string vars: type: string required: - type - vars type: object dto.BackupSearchFile: properties: type: type: string required: - type type: object dto.BatchDelete: properties: names: items: type: string type: array required: - names type: object dto.BatchDeleteReq: properties: ids: items: type: integer type: array required: - ids type: object dto.BatchRuleOperate: properties: rules: items: $ref: '#/definitions/dto.PortRuleOperate' type: array type: type: string required: - type type: object dto.CaptchaResponse: properties: captchaID: type: string imagePath: type: string type: object dto.ChangeDBInfo: properties: id: type: integer value: type: string required: - value type: object dto.ChangeHostGroup: properties: groupID: type: integer id: type: integer required: - groupID - id type: object dto.CleanLog: properties: logType: enum: - login - operation type: string required: - logType type: object dto.CommandInfo: properties: command: type: string id: type: integer name: type: string type: object dto.CommandOperate: properties: command: type: string id: type: integer name: type: string required: - command - name type: object dto.CommonBackup: properties: detailName: type: string name: type: string type: enum: - app - mysql - redis - website type: string required: - type type: object dto.CommonRecover: properties: detailName: type: string file: type: string name: type: string type: enum: - app - mysql - redis - website type: string required: - type type: object dto.ComposeCreate: properties: file: type: string from: enum: - edit - path - template type: string name: type: string path: type: string template: type: integer required: - from type: object dto.ComposeOperation: properties: name: type: string operation: enum: - start - stop - down type: string path: type: string required: - name - operation - path type: object dto.ComposeTemplateCreate: properties: content: type: string description: type: string name: type: string required: - name type: object dto.ComposeTemplateUpdate: properties: content: type: string description: type: string id: type: integer type: object dto.ComposeUpdate: properties: content: type: string name: type: string path: type: string required: - content - name - path type: object dto.ContainerCreate: properties: autoRemove: type: boolean cmd: items: type: string type: array env: items: type: string type: array exposedPorts: items: $ref: '#/definitions/dto.PortHelper' type: array image: type: string labels: items: type: string type: array memory: type: integer name: type: string nanoCPUs: type: integer publishAllPorts: type: boolean restartPolicy: type: string volumes: items: $ref: '#/definitions/dto.VolumeHelper' type: array type: object dto.ContainerLog: properties: containerID: type: string mode: type: string required: - containerID - mode type: object dto.ContainerOperation: properties: name: type: string newName: type: string operation: enum: - start - stop - restart - kill - pause - unpause - rename - remove type: string required: - name - operation type: object dto.ContainterStats: properties: cache: type: number cpuPercent: type: number ioRead: type: number ioWrite: type: number memory: type: number networkRX: type: number networkTX: type: number shotTime: type: string type: object dto.CronjobBatchDelete: properties: cleanData: type: boolean ids: items: type: integer type: array type: object dto.CronjobClean: properties: cleanData: type: boolean cronjobID: type: integer required: - cronjobID type: object dto.CronjobCreate: properties: day: type: integer dbName: type: string exclusionRules: type: string hour: type: integer keepLocal: type: boolean minute: type: integer name: type: string retainCopies: minimum: 1 type: integer script: type: string sourceDir: type: string specType: type: string targetDirID: type: integer type: type: string url: type: string website: type: string week: maximum: 7 minimum: 1 type: integer required: - name - specType - type type: object dto.CronjobDownload: properties: backupAccountID: type: integer recordID: type: integer required: - backupAccountID - recordID type: object dto.CronjobUpdate: properties: day: type: integer dbName: type: string exclusionRules: type: string hour: type: integer id: type: integer keepLocal: type: boolean minute: type: integer name: type: string retainCopies: minimum: 1 type: integer script: type: string sourceDir: type: string specType: type: string targetDirID: type: integer url: type: string website: type: string week: maximum: 7 minimum: 1 type: integer required: - id - name - specType type: object dto.CronjobUpdateStatus: properties: id: type: integer status: type: string required: - id - status type: object dto.DBBaseInfo: properties: containerName: type: string name: type: string port: type: integer type: object dto.DaemonJsonConf: properties: cgroupDriver: type: string insecureRegistries: items: type: string type: array iptables: type: boolean isSwarm: type: boolean liveRestore: type: boolean registryMirrors: items: type: string type: array status: type: string version: type: string type: object dto.DaemonJsonUpdateByFile: properties: file: type: string type: object dto.DashboardBase: properties: appInstalldNumber: type: integer cpuCores: type: integer cpuLogicalCores: type: integer cpuModelName: type: string cronjobNumber: type: integer currentInfo: $ref: '#/definitions/dto.DashboardCurrent' databaseNumber: type: integer hostname: type: string kernelArch: type: string kernelVersion: type: string os: type: string platform: type: string platformFamily: type: string platformVersion: type: string virtualizationSystem: type: string websiteNumber: type: integer type: object dto.DashboardCurrent: properties: MemoryUsedPercent: type: number cpuPercent: items: type: number type: array cpuTotal: type: integer cpuUsed: type: number cpuUsedPercent: type: number diskData: items: $ref: '#/definitions/dto.DiskInfo' type: array ioCount: type: integer ioReadBytes: type: integer ioReadTime: type: integer ioWriteBytes: type: integer ioWriteTime: type: integer load1: type: number load5: type: number load15: type: number loadUsagePercent: type: number memoryAvailable: type: integer memoryTotal: type: integer memoryUsed: type: integer netBytesRecv: type: integer netBytesSent: type: integer procs: type: integer shotTime: type: string timeSinceUptime: type: string uptime: type: integer type: object dto.DiskInfo: properties: device: type: string free: type: integer inodesFree: type: integer inodesTotal: type: integer inodesUsed: type: integer inodesUsedPercent: type: number path: type: string total: type: integer type: type: string used: type: integer usedPercent: type: number type: object dto.DockerOperation: properties: operation: enum: - start - restart - stop type: string stopService: type: boolean stopSocket: type: boolean required: - operation type: object dto.DownloadRecord: properties: fileDir: type: string fileName: type: string source: enum: - OSS - S3 - SFTP - MINIO - LOCAL - COS - KODO type: string required: - fileDir - fileName - source type: object dto.FilePath: properties: path: type: string required: - path type: object dto.FirewallBaseInfo: properties: name: type: string pingStatus: type: string status: type: string version: type: string type: object dto.FirewallOperation: properties: operation: enum: - start - stop - disablePing - enablePing type: string required: - operation type: object dto.ForBuckets: properties: accessKey: type: string credential: type: string type: type: string vars: type: string required: - credential - type - vars type: object dto.GroupCreate: properties: id: type: integer name: type: string type: type: string required: - name - type type: object dto.GroupSearch: properties: type: type: string required: - type type: object dto.GroupUpdate: properties: id: type: integer isDefault: type: boolean name: type: string type: type: string required: - type type: object dto.HostConnTest: properties: addr: type: string authMode: enum: - password - key type: string passPhrase: type: string password: type: string port: maximum: 65535 minimum: 1 type: integer privateKey: type: string user: type: string required: - addr - port - user type: object dto.HostInfo: properties: addr: type: string authMode: type: string createdAt: type: string description: type: string groupBelong: type: string groupID: type: integer id: type: integer name: type: string passPhrase: type: string password: type: string port: type: integer privateKey: type: string rememberPassword: type: boolean user: type: string type: object dto.HostOperate: properties: addr: type: string authMode: enum: - password - key type: string description: type: string groupID: type: integer id: type: integer name: type: string passPhrase: type: string password: type: string port: maximum: 65535 minimum: 1 type: integer privateKey: type: string rememberPassword: type: boolean user: type: string required: - addr - port - user type: object dto.ImageBuild: properties: dockerfile: type: string from: type: string name: type: string tags: items: type: string type: array required: - dockerfile - from - name type: object dto.ImageLoad: properties: path: type: string required: - path type: object dto.ImagePull: properties: imageName: type: string repoID: type: integer required: - imageName type: object dto.ImagePush: properties: name: type: string repoID: type: integer tagName: type: string required: - name - repoID - tagName type: object dto.ImageRepoDelete: properties: ids: items: type: integer type: array required: - ids type: object dto.ImageRepoUpdate: properties: auth: type: boolean downloadUrl: type: string id: type: integer password: type: string protocol: type: string username: type: string type: object dto.ImageSave: properties: name: type: string path: type: string tagName: type: string required: - name - path - tagName type: object dto.ImageTag: properties: repoID: type: integer sourceID: type: string targetName: type: string required: - sourceID - targetName type: object dto.InitUser: properties: name: type: string password: type: string required: - name - password type: object dto.InspectReq: properties: id: type: string type: type: string type: object dto.Login: properties: authMethod: type: string captcha: type: string captchaID: type: string name: type: string password: type: string type: object dto.MFALogin: properties: authMethod: type: string code: type: string name: type: string password: type: string type: object dto.MfaCredential: properties: code: type: string secret: type: string type: object dto.MysqlConfUpdateByFile: properties: file: type: string mysqlName: type: string required: - mysqlName type: object dto.MysqlDBCreate: properties: description: type: string format: enum: - utf8mb4 - utf8 - gbk - big5 type: string name: type: string password: type: string permission: type: string username: type: string required: - format - name - password - permission - username type: object dto.MysqlDBDelete: properties: deleteBackup: type: boolean forceDelete: type: boolean id: type: integer required: - id type: object dto.MysqlStatus: properties: Aborted_clients: type: string Aborted_connects: type: string Bytes_received: type: string Bytes_sent: type: string Com_commit: type: string Com_rollback: type: string Connections: type: string Created_tmp_disk_tables: type: string Created_tmp_tables: type: string File: type: string Innodb_buffer_pool_pages_dirty: type: string Innodb_buffer_pool_read_requests: type: string Innodb_buffer_pool_reads: type: string Key_read_requests: type: string Key_reads: type: string Key_write_requests: type: string Key_writes: type: string Max_used_connections: type: string Open_tables: type: string Opened_files: type: string Opened_tables: type: string Position: type: string Qcache_hits: type: string Qcache_inserts: type: string Questions: type: string Run: type: string Select_full_join: type: string Select_range_check: type: string Sort_merge_passes: type: string Table_locks_waited: type: string Threads_cached: type: string Threads_connected: type: string Threads_created: type: string Threads_running: type: string Uptime: type: string type: object dto.MysqlVariables: properties: binlog_cache_size: type: string innodb_buffer_pool_size: type: string innodb_log_buffer_size: type: string join_buffer_size: type: string key_buffer_size: type: string long_query_time: type: string max_connections: type: string max_heap_table_size: type: string query_cache_size: type: string query_cache_type: type: string read_buffer_size: type: string read_rnd_buffer_size: type: string slow_query_log: type: string sort_buffer_size: type: string table_open_cache: type: string thread_cache_size: type: string thread_stack: type: string tmp_table_size: type: string type: object dto.MysqlVariablesUpdate: properties: param: type: string value: {} type: object dto.NetworkCreat: properties: driver: type: string gateway: type: string ipRange: type: string labels: items: type: string type: array name: type: string options: items: type: string type: array subnet: type: string type: object dto.OperateByID: properties: id: type: integer required: - id type: object dto.PageContainer: properties: filters: type: string name: type: string page: type: integer pageSize: type: integer required: - page - pageSize type: object dto.PageInfo: properties: page: type: integer pageSize: type: integer required: - page - pageSize type: object dto.PageResult: properties: items: {} total: type: integer type: object dto.PasswordUpdate: properties: newPassword: type: string oldPassword: type: string required: - newPassword - oldPassword type: object dto.PortHelper: properties: containerPort: type: integer hostPort: type: integer type: object dto.PortRuleOperate: properties: address: type: string operation: enum: - add - remove type: string port: type: string protocol: enum: - tcp - udp - tcp/udp type: string strategy: enum: - accept - drop type: string required: - operation - port - protocol - strategy type: object dto.PortRuleUpdate: properties: newRule: $ref: '#/definitions/dto.PortRuleOperate' oldRule: $ref: '#/definitions/dto.PortRuleOperate' type: object dto.PortUpdate: properties: serverPort: maximum: 65535 minimum: 1 type: integer required: - serverPort type: object dto.RecordSearch: properties: detailName: type: string name: type: string page: type: integer pageSize: type: integer type: type: string required: - name - page - pageSize - type type: object dto.RedisConf: properties: containerName: type: string maxclients: type: string maxmemory: type: string name: type: string port: type: integer requirepass: type: string timeout: type: string type: object dto.RedisConfPersistenceUpdate: properties: appendfsync: type: string appendonly: type: string save: type: string type: enum: - aof - rbd type: string required: - type type: object dto.RedisConfUpdate: properties: maxclients: type: string maxmemory: type: string timeout: type: string type: object dto.RedisConfUpdateByFile: properties: file: type: string restartNow: type: boolean type: object dto.RedisPersistence: properties: appendfsync: type: string appendonly: type: string save: type: string type: object dto.RedisStatus: properties: connected_clients: type: string instantaneous_ops_per_sec: type: string keyspace_hits: type: string keyspace_misses: type: string latest_fork_usec: type: string mem_fragmentation_ratio: type: string tcp_port: type: string total_commands_processed: type: string total_connections_received: type: string uptime_in_days: type: string used_memory: type: string used_memory_peak: type: string used_memory_rss: type: string type: object dto.SearchForTree: properties: info: type: string type: object dto.SearchHostWithPage: properties: groupID: type: integer info: type: string page: type: integer pageSize: type: integer required: - page - pageSize type: object dto.SearchLgLogWithPage: properties: ip: type: string page: type: integer pageSize: type: integer status: type: string required: - page - pageSize type: object dto.SearchOpLogWithPage: properties: operation: type: string page: type: integer pageSize: type: integer source: type: string status: type: string required: - page - pageSize type: object dto.SearchRecord: properties: cronjobID: type: integer endTime: type: string page: type: integer pageSize: type: integer startTime: type: string status: type: string required: - page - pageSize type: object dto.SearchWithPage: properties: info: type: string page: type: integer pageSize: type: integer required: - page - pageSize type: object dto.SettingInfo: properties: appStoreVersion: type: string complexityVerification: type: string dingVars: type: string email: type: string emailVars: type: string expirationDays: type: string expirationTime: type: string language: type: string localTime: type: string messageType: type: string mfaSecret: type: string mfaStatus: type: string monitorStatus: type: string monitorStoreDays: type: string panelName: type: string port: type: string securityEntrance: type: string serverPort: type: string sessionTimeout: type: string systemVersion: type: string theme: type: string userName: type: string weChatVars: type: string type: object dto.SettingUpdate: properties: key: type: string value: type: string required: - key type: object dto.SnapshotCreate: properties: description: type: string from: enum: - OSS - S3 - SFTP - MINIO - COS - KODO type: string required: - from type: object dto.SnapshotImport: properties: description: type: string from: type: string names: items: type: string type: array type: object dto.SnapshotRecover: properties: id: type: integer isNew: type: boolean reDownload: type: boolean required: - id type: object dto.UpdateDescription: properties: description: type: string id: type: integer required: - id type: object dto.Upgrade: properties: version: type: string type: object dto.UpgradeInfo: properties: latestVersion: type: string newVersion: type: string releaseNote: type: string type: object dto.UserLoginInfo: properties: mfaStatus: type: string name: type: string token: type: string type: object dto.VolumeCreat: properties: driver: type: string labels: items: type: string type: array name: type: string options: items: type: string type: array type: object dto.VolumeHelper: properties: containerDir: type: string mode: type: string sourceDir: type: string type: object files.FileInfo: properties: content: type: string extension: type: string group: type: string isDir: type: boolean isHidden: type: boolean isSymlink: type: boolean itemTotal: type: integer items: items: $ref: '#/definitions/files.FileInfo' type: array linkPath: type: string mimeType: type: string modTime: type: string mode: type: string name: type: string path: type: string size: type: integer type: type: string updateTime: type: string user: type: string type: object mfa.Otp: properties: qrImage: type: string secret: type: string type: object model.App: properties: createdAt: type: string crossVersionUpdate: type: boolean document: type: string github: type: string icon: type: string id: type: integer key: type: string limit: type: integer name: type: string recommend: type: integer required: type: string resource: type: string shortDescEn: type: string shortDescZh: type: string status: type: string type: type: string updatedAt: type: string website: type: string type: object model.AppInstall: properties: app: $ref: '#/definitions/model.App' appDetailId: type: integer appId: type: integer containerName: type: string createdAt: type: string description: type: string dockerCompose: type: string env: type: string httpPort: type: integer httpsPort: type: integer id: type: integer message: type: string name: type: string param: type: string serviceName: type: string status: type: string updatedAt: type: string version: type: string type: object model.Tag: properties: createdAt: type: string id: type: integer key: type: string name: type: string updatedAt: type: string type: object model.Website: properties: accessLog: type: boolean alias: type: string appInstallId: type: integer createdAt: type: string defaultServer: type: boolean domains: items: $ref: '#/definitions/model.WebsiteDomain' type: array errorLog: type: boolean expireDate: type: string httpConfig: type: string id: type: integer primaryDomain: type: string protocol: type: string proxy: type: string proxyType: type: string remark: type: string rewrite: type: string runtimeID: type: integer siteDir: type: string status: type: string type: type: string updatedAt: type: string webSiteGroupId: type: integer webSiteSSL: $ref: '#/definitions/model.WebsiteSSL' webSiteSSLId: type: integer type: object model.WebsiteAcmeAccount: properties: createdAt: type: string email: type: string id: type: integer updatedAt: type: string url: type: string type: object model.WebsiteDomain: properties: createdAt: type: string domain: type: string id: type: integer port: type: integer updatedAt: type: string websiteId: type: integer type: object model.WebsiteSSL: properties: acmeAccount: $ref: '#/definitions/model.WebsiteAcmeAccount' acmeAccountId: type: integer autoRenew: type: boolean certURL: type: string createdAt: type: string dnsAccountId: type: integer domains: type: string expireDate: type: string id: type: integer organization: type: string pem: type: string primaryDomain: type: string privateKey: type: string provider: type: string startDate: type: string type: type: string updatedAt: type: string websites: items: $ref: '#/definitions/model.Website' type: array type: object request.AppInstallCreate: properties: appDetailId: type: integer name: type: string params: additionalProperties: true type: object services: additionalProperties: type: string type: object required: - appDetailId - name type: object request.AppInstalledOperate: properties: backupId: type: integer deleteBackup: type: boolean deleteDB: type: boolean detailId: type: integer forceDelete: type: boolean installId: type: integer operate: type: string required: - installId - operate type: object request.AppInstalledSearch: properties: name: type: string page: type: integer pageSize: type: integer tags: items: type: string type: array type: type: string unused: type: boolean update: type: boolean required: - page - pageSize type: object request.AppInstalledUpdate: properties: installId: type: integer params: additionalProperties: true type: object required: - installId - params type: object request.AppSearch: properties: name: type: string page: type: integer pageSize: type: integer recommend: type: boolean tags: items: type: string type: array type: type: string required: - page - pageSize type: object request.DirSizeReq: properties: path: type: string required: - path type: object request.FileBatchDelete: properties: isDir: type: boolean paths: items: type: string type: array required: - paths type: object request.FileCompress: properties: dst: type: string files: items: type: string type: array name: type: string replace: type: boolean type: type: string required: - dst - files - name - type type: object request.FileCreate: properties: content: type: string isDir: type: boolean isLink: type: boolean isSymlink: type: boolean linkPath: type: string mode: type: integer path: type: string required: - mode - path type: object request.FileDeCompress: properties: dst: type: string path: type: string type: type: string required: - dst - path - type type: object request.FileDelete: properties: isDir: type: boolean path: type: string required: - path type: object request.FileDownload: properties: compress: type: boolean name: type: string paths: items: type: string type: array type: type: string required: - compress - name - paths - type type: object request.FileEdit: properties: content: type: string path: type: string required: - content - path type: object request.FileMove: properties: newPath: type: string oldPaths: items: type: string type: array type: type: string required: - newPath - oldPaths - type type: object request.FileOption: properties: containSub: type: boolean dir: type: boolean expand: type: boolean page: type: integer pageSize: type: integer path: type: string search: type: string showHidden: type: boolean type: object request.FilePathCheck: properties: path: type: string required: - path type: object request.FileRename: properties: newName: type: string oldName: type: string required: - newName - oldName type: object request.FileWget: properties: name: type: string path: type: string url: type: string required: - name - path - url type: object request.NewAppInstall: properties: appDetailID: type: integer name: type: string params: additionalProperties: true type: object type: object request.NginxConfigFileUpdate: properties: backup: type: boolean content: type: string filePath: type: string required: - backup - content - filePath type: object request.NginxConfigUpdate: properties: operate: type: string params: {} scope: type: string websiteId: type: integer required: - websiteId type: object request.NginxRewriteReq: properties: name: type: string websiteId: type: integer required: - name - websiteId type: object request.NginxRewriteUpdate: properties: content: type: string name: type: string websiteId: type: integer required: - content - name - websiteId type: object request.NginxScopeReq: properties: scope: type: string websiteId: type: integer required: - scope type: object request.PortUpdate: properties: key: type: string name: type: string port: type: integer type: object request.RuntimeCreate: properties: appDetailId: type: integer image: type: string name: type: string params: additionalProperties: true type: object resource: type: string type: type: string version: type: string type: object request.RuntimeDelete: properties: id: type: integer type: object request.RuntimeSearch: properties: name: type: string page: type: integer pageSize: type: integer status: type: string type: type: string required: - page - pageSize type: object request.RuntimeUpdate: properties: id: type: integer image: type: string name: type: string params: additionalProperties: true type: object version: type: string type: object request.SearchUploadWithPage: properties: page: type: integer pageSize: type: integer path: type: string required: - page - pageSize - path type: object request.WebsiteAcmeAccountCreate: properties: email: type: string required: - email type: object request.WebsiteCreate: properties: alias: type: string appID: type: integer appInstall: $ref: '#/definitions/request.NewAppInstall' appInstallID: type: integer appType: enum: - new - installed type: string otherDomains: type: string port: type: integer primaryDomain: type: string proxy: type: string proxyType: type: string remark: type: string runtimeID: type: integer type: type: string webSiteGroupID: type: integer required: - alias - primaryDomain - type - webSiteGroupID type: object request.WebsiteDNSReq: properties: acmeAccountId: type: integer domains: items: type: string type: array required: - acmeAccountId - domains type: object request.WebsiteDefaultUpdate: properties: id: type: integer required: - id type: object request.WebsiteDelete: properties: deleteApp: type: boolean deleteBackup: type: boolean forceDelete: type: boolean id: type: integer required: - id type: object request.WebsiteDnsAccountCreate: properties: authorization: additionalProperties: type: string type: object name: type: string type: type: string required: - authorization - name - type type: object request.WebsiteDnsAccountUpdate: properties: authorization: additionalProperties: type: string type: object id: type: integer name: type: string type: type: string required: - authorization - id - name - type type: object request.WebsiteDomainCreate: properties: domain: type: string port: type: integer websiteId: type: integer required: - domain - port - websiteId type: object request.WebsiteDomainDelete: properties: id: type: integer required: - id type: object request.WebsiteHTTPSOp: properties: HttpConfig: enum: - HTTPSOnly - HTTPAlso - HTTPToHTTPS type: string SSLProtocol: items: type: string type: array algorithm: type: string certificate: type: string enable: type: boolean privateKey: type: string type: enum: - existed - auto - manual type: string websiteId: type: integer websiteSSLId: type: integer required: - enable - websiteId type: object request.WebsiteInstallCheckReq: properties: InstallIds: items: type: integer type: array required: - InstallIds type: object request.WebsiteLogReq: properties: id: type: integer logType: type: string operate: type: string required: - id - logType - operate type: object request.WebsiteNginxUpdate: properties: content: type: string id: type: integer required: - content - id type: object request.WebsiteOp: properties: id: type: integer operate: type: string required: - id type: object request.WebsitePHPConfigUpdate: properties: id: type: integer params: additionalProperties: type: string type: object required: - id - params type: object request.WebsitePHPFileUpdate: properties: content: type: string id: type: integer type: type: string required: - content - id - type type: object request.WebsiteResourceReq: properties: id: type: integer required: - id type: object request.WebsiteSSLCreate: properties: acmeAccountId: type: integer autoRenew: type: boolean dnsAccountId: type: integer otherDomains: type: string primaryDomain: type: string provider: type: string required: - acmeAccountId - autoRenew - primaryDomain - provider type: object request.WebsiteSSLRenew: properties: SSLId: type: integer required: - SSLId type: object request.WebsiteSSLSearch: properties: page: type: integer pageSize: type: integer required: - page - pageSize type: object request.WebsiteSSLUpdate: properties: autoRenew: type: boolean id: type: integer required: - autoRenew - id type: object request.WebsiteSearch: properties: name: type: string page: type: integer pageSize: type: integer websiteGroupId: type: integer required: - page - pageSize type: object request.WebsiteUpdate: properties: expireDate: type: string id: type: integer primaryDomain: type: string remark: type: string webSiteGroupID: type: integer required: - id - primaryDomain - webSiteGroupID type: object request.WebsiteUpdateDir: properties: id: type: integer siteDir: type: string required: - id - siteDir type: object request.WebsiteWafReq: properties: key: type: string rule: type: string websiteId: type: integer required: - key - rule - websiteId type: object request.WebsiteWafUpdate: properties: enable: type: boolean key: type: string websiteId: type: integer required: - enable - key - websiteId type: object response.AppDTO: properties: createdAt: type: string crossVersionUpdate: type: boolean document: type: string github: type: string icon: type: string id: type: integer key: type: string limit: type: integer name: type: string recommend: type: integer required: type: string resource: type: string shortDescEn: type: string shortDescZh: type: string status: type: string tags: items: $ref: '#/definitions/model.Tag' type: array type: type: string updatedAt: type: string versions: items: type: string type: array website: type: string type: object response.AppDetailDTO: properties: appId: type: integer createdAt: type: string enable: type: boolean id: type: integer image: type: string lastVersion: type: string params: {} readme: type: string status: type: string updatedAt: type: string version: type: string type: object response.AppInstalledCheck: properties: app: type: string appInstallId: type: integer containerName: type: string createdAt: type: string installPath: type: string isExist: type: boolean lastBackupAt: type: string name: type: string status: type: string version: type: string type: object response.AppParam: properties: edit: type: boolean key: type: string labelEn: type: string labelZh: type: string multiple: type: boolean required: type: boolean rule: type: string showValue: type: string type: type: string value: {} values: {} type: object response.FileInfo: properties: content: type: string extension: type: string group: type: string isDir: type: boolean isHidden: type: boolean isSymlink: type: boolean itemTotal: type: integer items: items: $ref: '#/definitions/files.FileInfo' type: array linkPath: type: string mimeType: type: string modTime: type: string mode: type: string name: type: string path: type: string size: type: integer type: type: string updateTime: type: string user: type: string type: object response.NginxParam: properties: name: type: string params: items: type: string type: array type: object response.NginxStatus: properties: accepts: type: string active: type: string handled: type: string reading: type: string requests: type: string waiting: type: string writing: type: string type: object response.PHPConfig: properties: params: additionalProperties: type: string type: object type: object response.WebsiteAcmeAccountDTO: properties: createdAt: type: string email: type: string id: type: integer updatedAt: type: string url: type: string type: object response.WebsiteDTO: properties: accessLog: type: boolean accessLogPath: type: string alias: type: string appInstallId: type: integer appName: type: string createdAt: type: string defaultServer: type: boolean domains: items: $ref: '#/definitions/model.WebsiteDomain' type: array errorLog: type: boolean errorLogPath: type: string expireDate: type: string httpConfig: type: string id: type: integer primaryDomain: type: string protocol: type: string proxy: type: string proxyType: type: string remark: type: string rewrite: type: string runtimeID: type: integer runtimeName: type: string siteDir: type: string sitePath: type: string status: type: string type: type: string updatedAt: type: string webSiteGroupId: type: integer webSiteSSL: $ref: '#/definitions/model.WebsiteSSL' webSiteSSLId: type: integer type: object response.WebsiteHTTPS: properties: SSL: $ref: '#/definitions/model.WebsiteSSL' SSLProtocol: items: type: string type: array algorithm: type: string enable: type: boolean httpConfig: type: string type: object response.WebsiteLog: properties: content: type: string enable: type: boolean type: object response.WebsiteNginxConfig: properties: enable: type: boolean params: items: $ref: '#/definitions/response.NginxParam' type: array type: object response.WebsiteWafConfig: properties: content: type: string enable: type: boolean filePath: type: string type: object host: localhost info: contact: {} description: 开源Linux面板 license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html termsOfService: http://swagger.io/terms/ title: 1Panel version: "1.0" paths: /apps/:key: get: consumes: - application/json description: 通过 key 获取应用信息 parameters: - description: app key in: path name: key required: true type: string responses: "200": description: OK schema: $ref: '#/definitions/response.AppDTO' security: - ApiKeyAuth: [] summary: Search app by key tags: - App /apps/checkupdate: get: description: 获取应用更新版本 responses: "200": description: "" security: - ApiKeyAuth: [] summary: Get app list update tags: - App /apps/detail/:appId/:version/:type: get: consumes: - application/json description: 通过 appid 获取应用详情 parameters: - description: app id in: path name: appId required: true type: integer - description: app 版本 in: path name: version required: true type: string - description: app 类型 in: path name: version required: true type: string responses: "200": description: OK schema: $ref: '#/definitions/response.AppDetailDTO' security: - ApiKeyAuth: [] summary: Search app detail by appid tags: - App /apps/details/:id: get: consumes: - application/json description: 通过 id 获取应用详情 parameters: - description: id in: path name: appId required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/response.AppDetailDTO' security: - ApiKeyAuth: [] summary: Get app detail by id tags: - App /apps/install: post: consumes: - application/json description: 安装应用 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.AppInstallCreate' responses: "200": description: OK schema: $ref: '#/definitions/model.AppInstall' security: - ApiKeyAuth: [] summary: Install app tags: - App x-panel-log: BeforeFuntions: - db: app_installs input_colume: name input_value: name isList: false output_colume: app_id output_value: appId - db: apps info: appId isList: false output_colume: key output_value: appKey bodyKeys: - name formatEN: Install app [appKey]-[name] formatZH: 安装应用 [appKey]-[name] paramKeys: [] /apps/installed/:appInstallId/versions: get: consumes: - application/json description: 通过 install id 获取应用更新版本 parameters: - description: request in: path name: appInstallId required: true type: integer responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Search app update version by install id tags: - App /apps/installed/check/:key: get: consumes: - application/json description: 检查应用安装情况 parameters: - description: request in: path name: key required: true type: string responses: "200": description: OK schema: $ref: '#/definitions/response.AppInstalledCheck' security: - ApiKeyAuth: [] summary: Check app installed tags: - App /apps/installed/conf/:key: get: consumes: - application/json description: 通过 key 获取应用默认配置 parameters: - description: request in: path name: key required: true type: string responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Search default config by key tags: - App /apps/installed/conninfo/:key: get: consumes: - application/json description: 获取应用连接信息 parameters: - description: request in: path name: key required: true type: string responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Search app password by key tags: - App /apps/installed/delete/check/:appInstallId: get: consumes: - application/json description: 删除前检查 parameters: - description: App install id in: path name: appInstallId required: true type: integer responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Check before delete tags: - App /apps/installed/loadport/:key: get: consumes: - application/json description: 获取应用端口 parameters: - description: request in: path name: key required: true type: string responses: "200": description: OK schema: type: integer security: - ApiKeyAuth: [] summary: Search app port by key tags: - App /apps/installed/op: post: consumes: - application/json description: 操作已安装应用 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.AppInstalledOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Operate installed app tags: - App x-panel-log: BeforeFuntions: - db: app_installs input_colume: id input_value: installId isList: false output_colume: app_id output_value: appId - db: app_installs input_colume: id input_value: installId isList: false output_colume: name output_value: appName - db: apps input_colume: id input_value: appId isList: false output_colume: key output_value: appKey bodyKeys: - installId - operate formatEN: '[appKey] App [appName] [operate]' formatZH: '[appKey] 应用 [appName] [operate]' paramKeys: [] /apps/installed/params/:appInstallId: get: consumes: - application/json description: 通过 install id 获取应用参数 parameters: - description: request in: path name: appInstallId required: true type: string responses: "200": description: OK schema: $ref: '#/definitions/response.AppParam' security: - ApiKeyAuth: [] summary: Search params by appInstallId tags: - App /apps/installed/params/update: post: consumes: - application/json description: 修改应用参数 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.AppInstalledUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change app params tags: - App x-panel-log: BeforeFuntions: [] bodyKeys: - installId formatEN: Application param update [installId] formatZH: 应用参数修改 [installId] paramKeys: [] /apps/installed/port/change: post: consumes: - application/json description: 修改应用端口 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.PortUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change app port tags: - App x-panel-log: BeforeFuntions: [] bodyKeys: - key - name - port formatEN: Application port update [key]-[name] => [port] formatZH: 应用端口修改 [key]-[name] => [port] paramKeys: [] /apps/installed/search: post: consumes: - application/json description: 获取已安装应用列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.AppInstalledSearch' responses: "200": description: "" security: - ApiKeyAuth: [] summary: List app installed tags: - App /apps/installed/sync: post: description: 同步已安装应用列表 responses: "200": description: "" security: - ApiKeyAuth: [] summary: Sync app installed tags: - App x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: Sync the list of installed apps formatZH: 同步已安装应用列表 paramKeys: [] /apps/search: post: consumes: - application/json description: 获取应用列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.AppSearch' responses: "200": description: "" security: - ApiKeyAuth: [] summary: List apps tags: - App /apps/services/:key: get: consumes: - application/json description: 通过 key 获取应用 service parameters: - description: request in: path name: key required: true type: string responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Search app service by key tags: - App /apps/sync: post: description: 同步应用列表 responses: "200": description: "" security: - ApiKeyAuth: [] summary: Sync app list tags: - App x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: App store synchronization formatZH: 应用商店同步 paramKeys: [] /auth/captcha: get: description: 加载验证码 responses: "200": description: OK schema: $ref: '#/definitions/dto.CaptchaResponse' summary: Load captcha tags: - Auth /auth/demo: get: description: 判断是否为demo环境 responses: "200": description: "" summary: Check System isDemo tags: - Auth /auth/init: post: consumes: - application/json description: 初始化用户 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.InitUser' responses: "200": description: "" summary: Init user tags: - Auth /auth/login: post: consumes: - application/json description: 用户登录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.Login' responses: "200": description: OK schema: $ref: '#/definitions/dto.UserLoginInfo' summary: User login tags: - Auth /auth/logout: post: description: 用户登出 responses: "200": description: "" security: - ApiKeyAuth: [] summary: User logout tags: - Auth /auth/mfalogin: post: consumes: - application/json description: 用户 mfa 登录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.MFALogin' responses: "200": description: OK schema: $ref: '#/definitions/dto.UserLoginInfo' summary: User login with mfa tags: - Auth /auth/status: get: description: 判断是否为首次登录 responses: "200": description: "" summary: Check is First login tags: - Auth /containers: post: consumes: - application/json description: 创建容器 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ContainerCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create container tags: - Container x-panel-log: BeforeFuntions: [] bodyKeys: - name - image formatEN: create container [name][image] formatZH: 创建容器 [name][image] paramKeys: [] /containers/compose: post: consumes: - application/json description: 创建容器编排 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ComposeCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create compose tags: - Container Compose x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: create compose [name] formatZH: 创建 compose [name] paramKeys: [] /containers/compose/operate: post: consumes: - application/json description: 容器编排操作 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ComposeOperation' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Operate compose tags: - Container Compose x-panel-log: BeforeFuntions: [] bodyKeys: - name - operation formatEN: compose [operation] [name] formatZH: compose [operation] [name] paramKeys: [] /containers/compose/search: post: consumes: - application/json description: 获取编排列表分页 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: [] summary: Page composes tags: - Container Compose /containers/compose/test: post: consumes: - application/json description: 测试 compose 是否可用 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ComposeCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Test compose tags: - Container Compose x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: check compose [name] formatZH: 检测 compose [name] 格式 paramKeys: [] /containers/compose/update: post: consumes: - application/json description: 更新容器编排 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ComposeUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update compose tags: - Container Compose x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: update compose information [name] formatZH: 更新 compose [name] paramKeys: [] /containers/daemonjson: get: description: 获取 docker 配置信息 produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.DaemonJsonConf' security: - ApiKeyAuth: [] summary: Load docker daemon.json tags: - Container Docker /containers/daemonjson/file: get: description: 获取 docker 配置信息(表单) produces: - application/json responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Load docker daemon.json tags: - Container Docker /containers/daemonjson/update: post: consumes: - application/json description: 修改 docker 配置信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.DaemonJsonConf' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update docker daemon.json tags: - Container Docker x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: Updated the docker daemon.json configuration formatZH: 更新 docker daemon.json 配置 paramKeys: [] /containers/daemonjson/update/byfile: post: consumes: - application/json description: 上传替换 docker 配置文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.DaemonJsonUpdateByFile' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update docker daemon.json by upload file tags: - Container Docker x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: Updated the docker daemon.json configuration formatZH: 更新 docker daemon.json 配置 paramKeys: [] /containers/docker/operate: post: consumes: - application/json description: Docker 操作 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.DockerOperation' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Operate docker tags: - Container Docker x-panel-log: BeforeFuntions: [] bodyKeys: - operation formatEN: '[operation] docker service' formatZH: docker 服务 [operation] paramKeys: [] /containers/docker/status: get: description: 获取 docker 服务状态 produces: - application/json responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Load docker status tags: - Container Docker /containers/image: get: description: 获取镜像列表 produces: - application/json responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List images tags: - Container Image /containers/image/build: post: consumes: - application/json description: 构建镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageBuild' responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Build image tags: - Container Image x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: build image [name] formatZH: 构建镜像 [name] paramKeys: [] /containers/image/load: post: consumes: - application/json description: 导入镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageLoad' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Load image tags: - Container Image x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: load image from [path] formatZH: 从 [path] 加载镜像 paramKeys: [] /containers/image/pull: post: consumes: - application/json description: 拉取镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImagePull' responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Pull image tags: - Container Image x-panel-log: BeforeFuntions: - db: image_repos input_colume: id input_value: repoID isList: false output_colume: name output_value: reponame bodyKeys: - repoID - imageName formatEN: image pull [reponame][imageName] formatZH: 镜像拉取 [reponame][imageName] paramKeys: [] /containers/image/push: post: consumes: - application/json description: 推送镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImagePush' responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Push image tags: - Container Image x-panel-log: BeforeFuntions: - db: image_repos input_colume: id input_value: repoID isList: false output_colume: name output_value: reponame bodyKeys: - repoID - tagName - name formatEN: push [tagName] to [reponame][name] formatZH: '[tagName] 推送到 [reponame][name]' paramKeys: [] /containers/image/remove: post: consumes: - application/json description: 删除镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete image tags: - Container Image x-panel-log: BeforeFuntions: [] bodyKeys: - names formatEN: remove image [names] formatZH: 移除镜像 [names] paramKeys: [] /containers/image/save: post: consumes: - application/json description: 导出镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageSave' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Save image tags: - Container Image x-panel-log: BeforeFuntions: [] bodyKeys: - tagName - path - name formatEN: save [tagName] as [path]/[name] formatZH: 保留 [tagName] 为 [path]/[name] paramKeys: [] /containers/image/search: post: consumes: - application/json description: 获取镜像列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchWithPage' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page images tags: - Container Image /containers/image/tag: post: consumes: - application/json description: Tag 镜像 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageTag' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Tag image tags: - Container Image x-panel-log: BeforeFuntions: - db: image_repos input_colume: id input_value: repoID isList: false output_colume: name output_value: reponame bodyKeys: - repoID - targetName formatEN: tag image [reponame][targetName] formatZH: tag 镜像 [reponame][targetName] paramKeys: [] /containers/inspect: post: consumes: - application/json description: 容器详情 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.InspectReq' responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Container inspect tags: - Container /containers/network: post: consumes: - application/json description: 创建容器网络 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.NetworkCreat' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create network tags: - Container Network x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: create container network [name] formatZH: 创建容器网络 name paramKeys: [] /containers/network/del: post: consumes: - application/json description: 删除容器网络 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete network tags: - Container Network x-panel-log: BeforeFuntions: [] bodyKeys: - names formatEN: delete container network [names] formatZH: 删除容器网络 [names] paramKeys: [] /containers/network/search: post: consumes: - application/json description: 获取容器网络列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchWithPage' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page networks tags: - Container Network /containers/operate: post: consumes: - application/json description: 容器操作 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ContainerOperation' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Operate Container tags: - Container x-panel-log: BeforeFuntions: [] bodyKeys: - name - operation - newName formatEN: container [operation] [name] [newName] formatZH: 容器 [name] 执行 [operation] [newName] paramKeys: [] /containers/repo: get: description: 获取镜像仓库列表 produces: - application/json responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List image repos tags: - Container Image-repo post: consumes: - application/json description: 创建镜像仓库 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageRepoDelete' produces: - application/json responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create image repo tags: - Container Image-repo x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: create image repo [name] formatZH: 创建镜像仓库 [name] paramKeys: [] /containers/repo/del: post: consumes: - application/json description: 删除镜像仓库 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageRepoDelete' produces: - application/json responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete image repo tags: - Container Image-repo x-panel-log: BeforeFuntions: - db: image_repos input_colume: id input_value: ids isList: true output_colume: name output_value: names bodyKeys: - ids formatEN: delete image repo [names] formatZH: 删除镜像仓库 [names] paramKeys: [] /containers/repo/search: post: consumes: - application/json description: 获取镜像仓库列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchWithPage' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page image repos tags: - Container Image-repo /containers/repo/status: get: consumes: - application/json description: 获取 docker 仓库状态 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.OperateByID' produces: - application/json responses: "200": description: "" security: - ApiKeyAuth: [] summary: Load repo status tags: - Container Image-repo /containers/repo/update: post: consumes: - application/json description: 更新镜像仓库 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ImageRepoUpdate' produces: - application/json responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update image repo tags: - Container Image-repo x-panel-log: BeforeFuntions: - db: image_repos input_column: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: update image repo information [name] formatZH: 更新镜像仓库 [name] paramKeys: [] /containers/search: post: consumes: - application/json description: 获取容器列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PageContainer' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page containers tags: - Container /containers/search/log: post: consumes: - application/json description: 容器日志 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ContainerLog' responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Container logs tags: - Container /containers/stats/:id: get: description: 容器监控信息 parameters: - description: 容器id in: path name: id required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/dto.ContainterStats' security: - ApiKeyAuth: [] summary: Container stats tags: - Container /containers/template: get: description: 获取容器编排模版列表 produces: - application/json responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List compose templates tags: - Container Compose-template post: consumes: - application/json description: 创建容器编排模版 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ComposeTemplateCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create compose template tags: - Container Compose-template x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: create compose template [name] formatZH: 创建 compose 模版 [name] paramKeys: [] /containers/template/del: post: consumes: - application/json description: 删除容器编排模版 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete compose template tags: - Container Compose-template x-panel-log: BeforeFuntions: - db: compose_templates input_colume: id input_value: ids isList: true output_colume: name output_value: names bodyKeys: - ids formatEN: delete compose template [names] formatZH: 删除 compose 模版 [names] paramKeys: [] /containers/template/search: post: consumes: - application/json description: 获取容器编排模版列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchWithPage' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page compose templates tags: - Container Compose-template /containers/template/update: post: consumes: - application/json description: 更新容器编排模版 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ComposeTemplateUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update compose template tags: - Container Compose-template x-panel-log: BeforeFuntions: - db: compose_templates input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: update compose template information [name] formatZH: 更新 compose 模版 [name] paramKeys: [] /containers/volume: post: consumes: - application/json description: 创建容器存储卷 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.VolumeCreat' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create volume tags: - Container Volume x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: create container volume [name] formatZH: 创建容器存储卷 [name] paramKeys: [] /containers/volume/del: post: consumes: - application/json description: 删除容器存储卷 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete volume tags: - Container Volume x-panel-log: BeforeFuntions: [] bodyKeys: - names formatEN: delete container volume [names] formatZH: 删除容器存储卷 [names] paramKeys: [] /containers/volume/search: get: consumes: - application/json description: 获取容器存储卷列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PageInfo' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: List volumes tags: - Container Volume post: consumes: - application/json description: 获取容器存储卷分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchWithPage' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page volumes tags: - Container Volume /cronjobs: post: consumes: - application/json description: 创建计划任务 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CronjobCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create cronjob tags: - Cronjob x-panel-log: BeforeFuntions: [] bodyKeys: - type - name formatEN: create cronjob [type][name] formatZH: 创建计划任务 [type][name] paramKeys: [] /cronjobs/del: post: consumes: - application/json description: 删除计划任务 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CronjobBatchDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete cronjob tags: - Cronjob x-panel-log: BeforeFuntions: - db: cronjobs input_colume: id input_value: ids isList: true output_colume: name output_value: names bodyKeys: - ids formatEN: delete cronjob [names] formatZH: 删除计划任务 [names] paramKeys: [] /cronjobs/download: post: consumes: - application/json description: 下载计划任务记录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CronjobDownload' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Download cronjob records tags: - Cronjob x-panel-log: BeforeFuntions: - db: job_records input_colume: id input_value: recordID isList: false output_colume: file output_value: file bodyKeys: - recordID formatEN: download the cronjob record [file] formatZH: 下载计划任务记录 [file] paramKeys: [] /cronjobs/handle: post: consumes: - application/json description: 手动执行计划任务 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.OperateByID' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Handle cronjob once tags: - Cronjob x-panel-log: BeforeFuntions: - db: cronjobs input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: manually execute the cronjob [name] formatZH: 手动执行计划任务 [name] paramKeys: [] /cronjobs/records/clean: post: consumes: - application/json description: 清空计划任务记录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CronjobClean' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Clean job records tags: - Cronjob x-panel-log: BeforeFuntions: - db: cronjobs input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: clean cronjob [name] records formatZH: 清空计划任务记录 [name] paramKeys: [] /cronjobs/search: post: consumes: - application/json description: 获取计划任务分页 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: [] summary: Page cronjobs tags: - Cronjob /cronjobs/search/records: post: consumes: - application/json description: 获取计划任务记录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchRecord' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page job records tags: - Cronjob /cronjobs/status: post: consumes: - application/json description: 更新计划任务状态 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CronjobUpdateStatus' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update cronjob status tags: - Cronjob x-panel-log: BeforeFuntions: - db: cronjobs input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id - status formatEN: change the status of cronjob [name] to [status]. formatZH: 修改计划任务 [name] 状态为 [status] paramKeys: [] /cronjobs/update: post: consumes: - application/json description: 更新计划任务 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CronjobUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update cronjob tags: - Cronjob x-panel-log: BeforeFuntions: - db: cronjobs input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: update cronjob [name] formatZH: 更新计划任务 [name] paramKeys: [] /dashboard/base/:ioOption/:netOption: get: consumes: - application/json description: 获取首页基础数据 parameters: - description: request in: path name: ioOption required: true type: string - description: request in: path name: netOption required: true type: string responses: "200": description: OK schema: $ref: '#/definitions/dto.DashboardBase' security: - ApiKeyAuth: [] summary: Load dashboard base info tags: - Dashboard /dashboard/current/:ioOption/:netOption: get: consumes: - application/json description: 获取首页实时数据 parameters: - description: request in: path name: ioOption required: true type: string - description: request in: path name: netOption required: true type: string responses: "200": description: OK schema: $ref: '#/definitions/dto.DashboardCurrent' security: - ApiKeyAuth: [] summary: Load dashboard current info tags: - Dashboard /databases: post: consumes: - application/json description: 创建 mysql 数据库 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.MysqlDBCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create mysql database tags: - Database Mysql x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: create mysql database [name] formatZH: 创建 mysql 数据库 [name] paramKeys: [] /databases/baseinfo: get: description: 获取 mysql 基础信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.DBBaseInfo' security: - ApiKeyAuth: [] summary: Load mysql base info tags: - Database Mysql /databases/change/access: post: consumes: - application/json description: 修改 mysql 访问权限 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ChangeDBInfo' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change mysql access tags: - Database Mysql x-panel-log: BeforeFuntions: - db: database_mysqls input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: Update database [name] access formatZH: 更新数据库 [name] 访问权限 paramKeys: [] /databases/change/password: post: consumes: - application/json description: 修改 mysql 密码 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ChangeDBInfo' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change mysql password tags: - Database Mysql x-panel-log: BeforeFuntions: - db: database_mysqls input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: Update database [name] password formatZH: 更新数据库 [name] 密码 paramKeys: [] /databases/conffile/update: post: consumes: - application/json description: 上传替换 mysql 配置文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.MysqlConfUpdateByFile' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update mysql conf by upload file tags: - Database Mysql x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: update the mysql database configuration information formatZH: 更新 mysql 数据库配置信息 paramKeys: [] /databases/del: post: consumes: - application/json description: 删除 mysql 数据库 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.MysqlDBDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete mysql database tags: - Database Mysql x-panel-log: BeforeFuntions: - db: database_mysqls input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: delete mysql database [name] formatZH: 删除 mysql 数据库 [name] paramKeys: [] /databases/del/check: post: consumes: - application/json description: Mysql 数据库删除前检查 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.OperateByID' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Check before delete mysql database tags: - Database Mysql /databases/description/update: post: consumes: - application/json description: 更新 mysql 数据库库描述信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.UpdateDescription' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update mysql database description tags: - Database Mysql x-panel-log: BeforeFuntions: - db: database_mysqls input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id - description formatEN: The description of the mysql database [name] is modified => [description] formatZH: mysql 数据库 [name] 描述信息修改 [description] paramKeys: [] /databases/options: get: consumes: - application/json description: 获取 mysql 数据库列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PageInfo' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List mysql database names tags: - Database Mysql /databases/redis/backup/search: post: consumes: - application/json description: 获取 redis 备份记录分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PageInfo' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page redis backups tags: - Database Redis /databases/redis/conf: get: description: 获取 redis 配置信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.RedisConf' security: - ApiKeyAuth: [] summary: Load redis conf tags: - Database Redis /databases/redis/conf/update: post: consumes: - application/json description: 更新 redis 配置信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.RedisConfUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update redis conf tags: - Database Redis x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: update the redis database configuration information formatZH: 更新 redis 数据库配置信息 paramKeys: [] /databases/redis/conffile/update: post: consumes: - application/json description: 上传更新 redis 配置信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.RedisConfUpdateByFile' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update redis conf by file tags: - Database Redis x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: update the redis database configuration information formatZH: 更新 redis 数据库配置信息 paramKeys: [] /databases/redis/password: post: consumes: - application/json description: 更新 redis 密码 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ChangeDBInfo' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change redis password tags: - Database Redis x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: change the password of the redis database formatZH: 修改 redis 数据库密码 paramKeys: [] /databases/redis/persistence/conf: get: description: 获取 redis 持久化配置 responses: "200": description: OK schema: $ref: '#/definitions/dto.RedisPersistence' security: - ApiKeyAuth: [] summary: Load redis persistence conf tags: - Database Redis /databases/redis/persistence/update: post: consumes: - application/json description: 更新 redis 持久化配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.RedisConfPersistenceUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update redis persistence conf tags: - Database Redis x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: redis database persistence configuration update formatZH: redis 数据库持久化配置更新 paramKeys: [] /databases/redis/status: get: description: 获取 redis 状态信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.RedisStatus' security: - ApiKeyAuth: [] summary: Load redis status info tags: - Database Redis /databases/remote: get: description: 获取 mysql 远程访问权限 responses: "200": description: OK schema: type: boolean security: - ApiKeyAuth: [] summary: Load mysql remote access tags: - Database Mysql /databases/search: post: consumes: - application/json description: 获取 mysql 数据库列表分页 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: [] summary: Page mysql databases tags: - Database Mysql /databases/status: get: description: 获取 mysql 状态信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.MysqlStatus' security: - ApiKeyAuth: [] summary: Load mysql status info tags: - Database Mysql /databases/variables: get: description: 获取 mysql 性能参数信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.MysqlVariables' security: - ApiKeyAuth: [] summary: Load mysql variables info tags: - Database Mysql /databases/variables/update: post: consumes: - application/json description: mysql 性能调优 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.MysqlVariablesUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update mysql variables tags: - Database Mysql x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: adjust mysql database performance parameters formatZH: 调整 mysql 数据库性能参数 paramKeys: [] /files: post: consumes: - application/json description: 创建文件/文件夹 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Create dir or file [path] formatZH: 创建文件/文件夹 [path] paramKeys: [] /files/batch/del: post: consumes: - application/json description: 批量删除文件/文件夹 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileBatchDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Batch delete file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - paths formatEN: Batch delete dir or file [paths] formatZH: 批量删除文件/文件夹 [paths] paramKeys: [] /files/check: post: consumes: - application/json description: 检测文件是否存在 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FilePathCheck' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Check file exist tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Check whether file [path] exists formatZH: 检测文件 [path] 是否存在 paramKeys: [] /files/chunkupload: post: description: 分片上传文件 parameters: - description: request in: formData name: file required: true type: file responses: "200": description: "" security: - ApiKeyAuth: [] summary: ChunkUpload file tags: - File /files/compress: post: consumes: - application/json description: 压缩文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileCompress' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Compress file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: Compress file [name] formatZH: 压缩文件 [name] paramKeys: [] /files/content: post: consumes: - application/json description: 获取文件内容 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileOption' responses: "200": description: OK schema: $ref: '#/definitions/response.FileInfo' security: - ApiKeyAuth: [] summary: Load file content tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Load file content [path] formatZH: 获取文件内容 [path] paramKeys: [] /files/decompress: post: consumes: - application/json description: 解压文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileDeCompress' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Decompress file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Decompress file [path] formatZH: 解压 [path] paramKeys: [] /files/del: post: consumes: - application/json description: 删除文件/文件夹 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Delete dir or file [path] formatZH: 删除文件/文件夹 [path] paramKeys: [] /files/download: post: consumes: - application/json description: 下载文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileDownload' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Download file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: Download file [name] formatZH: 下载文件 [name] paramKeys: [] /files/download/bypath: post: consumes: - application/json description: 下载指定文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.FilePath' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Download file with path tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Download file [path] formatZH: 下载文件 [path] paramKeys: [] /files/loadfile: post: consumes: - application/json description: 读取文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.FilePath' responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Read file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Read file [path] formatZH: 读取文件 [path] paramKeys: [] /files/mode: post: consumes: - application/json description: 修改文件权限 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change file mode tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path - mode formatEN: Change mode [paths] => [mode] formatZH: 修改权限 [paths] => [mode] paramKeys: [] /files/move: post: consumes: - application/json description: 移动文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileMove' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Move file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - oldPaths - newPath formatEN: Move [oldPaths] => [newPath] formatZH: 移动文件 [oldPaths] => [newPath] paramKeys: [] /files/rename: post: consumes: - application/json description: 修改文件名称 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileRename' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change file name tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - oldName - newName formatEN: Rename [oldName] => [newName] formatZH: 重命名 [oldName] => [newName] paramKeys: [] /files/save: post: consumes: - application/json description: 更新文件内容 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileEdit' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update file content tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Update file content [path] formatZH: 更新文件内容 [path] paramKeys: [] /files/search: post: consumes: - application/json description: 获取文件列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileOption' responses: "200": description: OK schema: $ref: '#/definitions/response.FileInfo' security: - ApiKeyAuth: [] summary: List files tags: - File /files/size: post: consumes: - application/json description: 获取文件夹大小 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.DirSizeReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Load file size tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Load file size [path] formatZH: 获取文件夹大小 [path] paramKeys: [] /files/tree: post: consumes: - application/json description: 加载文件树 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileOption' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Load files tree tags: - File /files/upload: post: description: 上传文件 parameters: - description: request in: formData name: file required: true type: file responses: "200": description: "" security: - ApiKeyAuth: [] summary: Upload file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - path formatEN: Upload file [path] formatZH: 上传文件 [path] paramKeys: [] /files/upload/search: post: consumes: - application/json description: 分页获取上传文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.SearchUploadWithPage' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Page file tags: - File /files/wget: post: consumes: - application/json description: 下载远端文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.FileWget' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Wget file tags: - File x-panel-log: BeforeFuntions: [] bodyKeys: - url - path - name formatEN: Download url => [path]/[name] formatZH: 下载 url => [path]/[name] paramKeys: [] /groups: post: consumes: - application/json description: 创建系统组 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.GroupCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create group tags: - System Group x-panel-log: BeforeFuntions: [] bodyKeys: - name - type formatEN: create group [name][type] formatZH: 创建组 [name][type] paramKeys: [] /groups/del: post: consumes: - application/json description: 删除系统组 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.OperateByID' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete group tags: - System Group x-panel-log: BeforeFuntions: - db: groups input_colume: id input_value: id isList: false output_colume: name output_value: name - db: groups input_colume: id input_value: id isList: false output_colume: type output_value: type bodyKeys: - id formatEN: delete group [type][name] formatZH: 删除组 [type][name] paramKeys: [] /groups/search: post: consumes: - application/json description: 查询系统组 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.GroupSearch' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List groups tags: - System Group /groups/update: post: consumes: - application/json description: 更新系统组 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.GroupUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update group tags: - System Group x-panel-log: BeforeFuntions: [] bodyKeys: - name - type formatEN: update group [name][type] formatZH: 更新组 [name][type] paramKeys: [] /hosts: post: consumes: - application/json description: 创建主机 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.HostOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create host tags: - Host x-panel-log: BeforeFuntions: [] bodyKeys: - name - addr formatEN: create host [name][addr] formatZH: 创建主机 [name][addr] paramKeys: [] /hosts/:id: get: consumes: - application/json description: 加载主机信息 parameters: - description: request in: path name: id required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/dto.HostInfo' security: - ApiKeyAuth: [] summary: Load host info tags: - Host /hosts/command: get: description: 获取快速命令列表 responses: "200": description: OK schema: $ref: '#/definitions/dto.CommandInfo' security: - ApiKeyAuth: [] summary: List commands tags: - Command post: consumes: - application/json description: 创建快速命令 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CommandOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create command tags: - Command x-panel-log: BeforeFuntions: [] bodyKeys: - name - command formatEN: create quick command [name][command] formatZH: 创建快捷命令 [name][command] paramKeys: [] /hosts/command/del: post: consumes: - application/json description: 删除快速命令 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDeleteReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete command tags: - Command x-panel-log: BeforeFuntions: - db: commands input_colume: id input_value: ids isList: true output_colume: name output_value: names bodyKeys: - ids formatEN: delete quick command [names] formatZH: 删除快捷命令 [names] paramKeys: [] /hosts/command/search: post: consumes: - application/json description: 获取快速命令列表分页 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: [] summary: Page commands tags: - Command /hosts/command/update: post: consumes: - application/json description: 更新快速命令 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CommandOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update command tags: - Command x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: update quick command [name] formatZH: 更新快捷命令 [name] paramKeys: [] /hosts/del: post: consumes: - application/json description: 删除主机 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDeleteReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete host tags: - Host x-panel-log: BeforeFuntions: - db: hosts input_colume: id input_value: ids isList: true output_colume: addr output_value: addrs bodyKeys: - ids formatEN: delete host [addrs] formatZH: 删除主机 [addrs] paramKeys: [] /hosts/firewall/base: get: description: 获取防火墙基础信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.FirewallBaseInfo' security: - ApiKeyAuth: [] summary: Load firewall base info tags: - Firewall /hosts/firewall/ip: post: consumes: - application/json description: 批量删除防火墙规则 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchRuleOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create group tags: - Firewall /hosts/firewall/operate: post: consumes: - application/json description: 修改防火墙状态 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.FirewallOperation' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page firewall status tags: - Firewall x-panel-log: BeforeFuntions: [] bodyKeys: - operation formatEN: '[operation] firewall' formatZH: '[operation] 防火墙' paramKeys: [] /hosts/firewall/port: post: consumes: - application/json description: 创建防火墙端口规则 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PortRuleOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create group tags: - Firewall x-panel-log: BeforeFuntions: [] bodyKeys: - port - strategy formatEN: create port rules [strategy][port] formatZH: 添加端口规则 [strategy] [port] paramKeys: [] /hosts/firewall/search: post: consumes: - application/json description: 获取防火墙规则列表分页 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: [] summary: Page firewall rules tags: - Firewall /hosts/firewall/update/ip: post: consumes: - application/json description: 更新 ip 防火墙规则 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.AddrRuleUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create group tags: - Firewall /hosts/firewall/update/port: post: consumes: - application/json description: 更新端口防火墙规则 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PortRuleUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create group tags: - Firewall /hosts/search: post: consumes: - application/json description: 获取主机列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchHostWithPage' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Page host tags: - Host /hosts/test/byid/:id: post: consumes: - application/json description: 测试主机连接 parameters: - description: request in: path name: id required: true type: integer responses: "200": description: OK schema: type: boolean security: - ApiKeyAuth: [] summary: Test host conn by host id tags: - Host /hosts/test/byinfo: post: consumes: - application/json description: 测试主机连接 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.HostConnTest' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Test host conn by info tags: - Host /hosts/tree: post: consumes: - application/json description: 加载主机树 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchForTree' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Load host tree tags: - Host /hosts/update: post: consumes: - application/json description: 更新主机 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.HostOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update host tags: - Host x-panel-log: BeforeFuntions: [] bodyKeys: - name - addr formatEN: update host [name][addr] formatZH: 更新主机信息 [name][addr] paramKeys: [] /hosts/update/group: post: consumes: - application/json description: 切换分组 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ChangeHostGroup' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update host group tags: - Host x-panel-log: BeforeFuntions: - db: hosts input_colume: id input_value: id isList: false output_colume: addr output_value: addr bodyKeys: - id - group formatEN: change host [addr] group => [group] formatZH: 切换主机[addr]分组 => [group] paramKeys: [] /logs/clean: post: consumes: - application/json description: 清空操作日志 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CleanLog' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Clean operation logs tags: - Logs x-panel-log: BeforeFuntions: [] bodyKeys: - logType formatEN: Clean the [logType] log information formatZH: 清空 [logType] 日志信息 paramKeys: [] /logs/login: post: consumes: - application/json description: 获取系统登录日志列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchLgLogWithPage' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page login logs tags: - Logs /logs/operation: post: consumes: - application/json description: 获取系统操作日志列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SearchOpLogWithPage' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page operation logs tags: - Logs /openResty: get: description: 获取 OpenResty 配置信息 responses: "200": description: OK schema: $ref: '#/definitions/response.FileInfo' security: - ApiKeyAuth: [] summary: Load OpenResty conf tags: - OpenResty /openResty/file: post: consumes: - application/json description: 上传更新 OpenResty 配置文件 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxConfigFileUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update OpenResty conf by upload file tags: - OpenResty x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: Update nginx conf formatZH: 更新 nginx 配置 paramKeys: [] /openResty/scope: post: consumes: - application/json description: 获取部分 OpenResty 配置信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxScopeReq' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Load partial OpenResty conf tags: - OpenResty /openResty/status: get: description: 获取 OpenResty 状态信息 responses: "200": description: OK schema: $ref: '#/definitions/response.NginxStatus' security: - ApiKeyAuth: [] summary: Load OpenResty status info tags: - OpenResty /openResty/update: post: consumes: - application/json description: 更新 OpenResty 配置信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxConfigUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update OpenResty conf tags: - OpenResty x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: websiteId isList: false output_colume: primary_domain output_value: domain bodyKeys: - websiteId formatEN: Update nginx conf [domain] formatZH: 更新 nginx 配置 [domain] paramKeys: [] /runtimes: post: consumes: - application/json description: 创建运行环境 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.RuntimeCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create runtime tags: - Runtime x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: Create runtime [name] formatZH: 创建运行环境 [name] paramKeys: [] /runtimes/:id: get: consumes: - application/json description: 获取运行环境 parameters: - description: request in: path name: id required: true type: string responses: "200": description: "" security: - ApiKeyAuth: [] summary: Get runtime tags: - Runtime /runtimes/del: post: consumes: - application/json description: 删除运行环境 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.RuntimeDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete runtime tags: - Website x-panel-log: BeforeFuntions: [] bodyKeys: - id formatEN: Delete website [name] formatZH: 删除网站 [name] paramKeys: [] /runtimes/search: post: consumes: - application/json description: 获取运行环境列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.RuntimeSearch' responses: "200": description: "" security: - ApiKeyAuth: [] summary: List runtimes tags: - Runtime /runtimes/update: post: consumes: - application/json description: 更新运行环境 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.RuntimeUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update runtime tags: - Runtime x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: Update runtime [name] formatZH: 更新运行环境 [name] paramKeys: [] /settings/backup: post: consumes: - application/json description: 创建备份账号 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BackupOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create backup account tags: - Backup Account x-panel-log: BeforeFuntions: [] bodyKeys: - type formatEN: create backup account [type] formatZH: 创建备份账号 [type] paramKeys: [] /settings/backup/: post: consumes: - application/json description: 备份系统数据 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CommonBackup' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Backup system data tags: - Backup Account x-panel-log: BeforeFuntions: [] bodyKeys: - type - name - detailName formatEN: backup [type] data [name][detailName] formatZH: 备份 [type] 数据 [name][detailName] paramKeys: [] /settings/backup/del: post: consumes: - application/json description: 删除备份账号 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDeleteReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete backup account tags: - Backup Account x-panel-log: BeforeFuntions: - db: backup_accounts input_colume: id input_value: id isList: true output_colume: type output_value: types bodyKeys: - id formatEN: delete backup account [types] formatZH: 删除备份账号 [types] paramKeys: [] /settings/backup/record/del: post: consumes: - application/json description: 删除备份记录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDeleteReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete backup record tags: - Backup Account x-panel-log: BeforeFuntions: - db: backup_records input_colume: id input_value: ids isList: true output_colume: file_name output_value: files bodyKeys: - ids formatEN: delete backup records [files] formatZH: 删除备份记录 [files] paramKeys: [] /settings/backup/record/download: post: consumes: - application/json description: 下载备份记录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.DownloadRecord' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Download backup record tags: - Backup Account x-panel-log: BeforeFuntions: [] bodyKeys: - source - fileName formatEN: download backup records [source][fileName] formatZH: 下载备份记录 [source][fileName] paramKeys: [] /settings/backup/record/search: post: consumes: - application/json description: 获取备份记录列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.RecordSearch' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Page backup records tags: - Backup Account /settings/backup/recover: post: consumes: - application/json description: 恢复系统数据 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CommonRecover' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Recover system data tags: - Backup Account x-panel-log: BeforeFuntions: [] bodyKeys: - type - name - detailName - file formatEN: recover [type] data [name][detailName] from [file] formatZH: 从 [file] 恢复 [type] 数据 [name][detailName] paramKeys: [] /settings/backup/recover/byupload: post: consumes: - application/json description: 从上传恢复系统数据 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.CommonRecover' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Recover system data by upload tags: - Backup Account x-panel-log: BeforeFuntions: [] bodyKeys: - type - name - detailName - file formatEN: recover [type] data [name][detailName] from [file] formatZH: 从 [file] 恢复 [type] 数据 [name][detailName] paramKeys: [] /settings/backup/search: get: description: 获取备份账号列表 responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List backup accounts tags: - Backup Account post: consumes: - application/json description: 获取 bucket 列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.ForBuckets' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List buckets tags: - Backup Account /settings/backup/search/files: post: consumes: - application/json description: 获取备份账号内文件列表 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BackupSearchFile' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List files from backup accounts tags: - Backup Account /settings/backup/update: post: consumes: - application/json description: 更新备份账号信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BackupOperate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update backup account tags: - Backup Account x-panel-log: BeforeFuntions: [] bodyKeys: - type formatEN: update backup account [types] formatZH: 更新备份账号 [types] paramKeys: [] /settings/basedir: get: description: 获取安装根目录 responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Load local backup dir tags: - System Setting /settings/expired/handle: post: consumes: - application/json description: 重置过期系统登录密码 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PasswordUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Reset system password expired tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: reset an expired Password formatZH: 重置过期密码 paramKeys: [] /settings/mfa: get: description: 获取 mfa 信息 responses: "200": description: OK schema: $ref: '#/definitions/mfa.Otp' security: - ApiKeyAuth: [] summary: Load mfa info tags: - System Setting /settings/mfa/bind: post: consumes: - application/json description: Mfa 绑定 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.MfaCredential' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Bind mfa tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: bind mfa formatZH: mfa 绑定 paramKeys: [] /settings/monitor/clean: post: description: 清空监控数据 responses: "200": description: "" security: - ApiKeyAuth: [] summary: Clean monitor datas tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: clean monitor datas formatZH: 清空监控数据 paramKeys: [] /settings/password/update: post: consumes: - application/json description: 更新系统登录密码 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PasswordUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update system password tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: update system password formatZH: 修改系统密码 paramKeys: [] /settings/port/update: post: consumes: - application/json description: 更新系统端口 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PortUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update system port tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: - serverPort formatEN: update system port => [serverPort] formatZH: 修改系统端口 => [serverPort] paramKeys: [] /settings/search: post: description: 加载系统配置信息 responses: "200": description: OK schema: $ref: '#/definitions/dto.SettingInfo' security: - ApiKeyAuth: [] summary: Load system setting info tags: - System Setting /settings/search/available: get: description: 获取系统可用状态 responses: "200": description: "" security: - ApiKeyAuth: [] summary: Load system available status tags: - System Setting /settings/snapshot: post: consumes: - application/json description: 创建系统快照 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SnapshotCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create system snapshot tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: - from - description formatEN: Create system backup [description] to [from] formatZH: 创建系统快照 [description] 到 [from] paramKeys: [] /settings/snapshot/del: post: consumes: - application/json description: 删除系统快照 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.BatchDeleteReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete system backup tags: - System Setting x-panel-log: BeforeFuntions: - db: snapshots input_colume: id input_value: ids isList: true output_colume: name output_value: name bodyKeys: - ids formatEN: Delete system backup [name] formatZH: 删除系统快照 [name] paramKeys: [] /settings/snapshot/description/update: post: consumes: - application/json description: 更新快照描述信息 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.UpdateDescription' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update snapshot description tags: - System Setting x-panel-log: BeforeFuntions: - db: snapshots input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id - description formatEN: The description of the snapshot [name] is modified => [description] formatZH: 快照 [name] 描述信息修改 [description] paramKeys: [] /settings/snapshot/import: post: consumes: - application/json description: 导入已有快照 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SnapshotImport' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Import system snapshot tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: - from - names formatEN: Sync system snapshots [names] from [from] formatZH: 从 [from] 同步系统快照 [names] paramKeys: [] /settings/snapshot/recover: post: consumes: - application/json description: 从系统快照恢复 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SnapshotRecover' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Recover system backup tags: - System Setting x-panel-log: BeforeFuntions: - db: snapshots input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: Recover from system backup [name] formatZH: 从系统快照 [name] 恢复 paramKeys: [] /settings/snapshot/rollback: post: consumes: - application/json description: 从系统快照回滚 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SnapshotRecover' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Rollback system backup tags: - System Setting x-panel-log: BeforeFuntions: - db: snapshots input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: Rollback from system backup [name] formatZH: 从系统快照 [name] 回滚 paramKeys: [] /settings/snapshot/search: post: consumes: - application/json description: 获取系统快照列表分页 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: [] summary: Page system snapshot tags: - System Setting /settings/time/sync: post: description: 系统时间同步 responses: "200": description: OK schema: type: string security: - ApiKeyAuth: [] summary: Sync system time tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: [] formatEN: sync system time formatZH: 系统时间同步 paramKeys: [] /settings/update: post: consumes: - application/json description: 更新系统配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.SettingUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update system setting tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: - key - value formatEN: update system setting [key] => [value] formatZH: 修改系统配置 [key] => [value] paramKeys: [] /settings/upgrade: get: consumes: - application/json description: 获取版本 release notes parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.Upgrade' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Load release notes by version tags: - System Setting post: consumes: - application/json description: 系统更新 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.Upgrade' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Upgrade tags: - System Setting x-panel-log: BeforeFuntions: [] bodyKeys: - version formatEN: upgrade service => [version] formatZH: 更新系统 => [version] paramKeys: [] /websites: post: consumes: - application/json description: 创建网站 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create website tags: - Website x-panel-log: BeforeFuntions: [] bodyKeys: - primaryDomain formatEN: Create website [primaryDomain] formatZH: 创建网站 [primaryDomain] paramKeys: [] /websites/:id: get: consumes: - application/json description: 通过 id 查询网站 parameters: - description: request in: path name: id required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteDTO' security: - ApiKeyAuth: [] summary: Search website by id tags: - Website /websites/:id/config/:type: get: consumes: - application/json description: 通过 id 查询网站 nginx parameters: - description: request in: path name: id required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/response.FileInfo' security: - ApiKeyAuth: [] summary: Search website nginx by id tags: - Website Nginx /websites/:id/https: get: consumes: - application/json description: 获取 https 配置 parameters: - description: request in: path name: id required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteHTTPS' security: - ApiKeyAuth: [] summary: Load https conf tags: - Website HTTPS post: consumes: - application/json description: 更新 https 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteHTTPSOp' responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteHTTPS' security: - ApiKeyAuth: [] summary: Update https conf tags: - Website HTTPS x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: websiteId isList: false output_colume: primary_domain output_value: domain bodyKeys: - websiteId formatEN: Update website https [domain] conf formatZH: 更新网站 [domain] https 配置 paramKeys: [] /websites/acme: post: consumes: - application/json description: 创建网站 acme parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteAcmeAccountCreate' responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteAcmeAccountDTO' security: - ApiKeyAuth: [] summary: Create website acme account tags: - Website Acme x-panel-log: BeforeFuntions: [] bodyKeys: - email formatEN: Create website acme [email] formatZH: 创建网站 acme [email] paramKeys: [] /websites/acme/del: post: consumes: - application/json description: 删除网站 acme parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteResourceReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete website acme account tags: - Website Acme x-panel-log: BeforeFuntions: - db: website_acme_accounts input_colume: id input_value: id isList: false output_colume: email output_value: email bodyKeys: - id formatEN: Delete website acme [email] formatZH: 删除网站 acme [email] paramKeys: [] /websites/acme/search: post: consumes: - application/json description: 获取网站 acme 列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PageInfo' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page website acme accounts tags: - Website Acme /websites/check: post: consumes: - application/json description: 网站创建前检查 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteInstallCheckReq' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Check before create website tags: - Website /websites/config: post: consumes: - application/json description: 获取 nginx 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxScopeReq' responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteNginxConfig' security: - ApiKeyAuth: [] summary: Load nginx conf tags: - Website Nginx /websites/config/update: post: consumes: - application/json description: 更新 nginx 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxConfigUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update nginx conf tags: - Website Nginx x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: websiteId isList: false output_colume: primary_domain output_value: domain bodyKeys: - websiteId formatEN: Nginx conf update [domain] formatZH: nginx 配置修改 [domain] paramKeys: [] /websites/default/server: post: consumes: - application/json description: 操作网站日志 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDefaultUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Change default server tags: - Website x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id - operate formatEN: Change default server => [domain] formatZH: 修改默认 server => [domain] paramKeys: [] /websites/del: post: consumes: - application/json description: 删除网站 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete website tags: - Website x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id formatEN: Delete website [domain] formatZH: 删除网站 [domain] paramKeys: [] /websites/dir/update: post: consumes: - application/json description: 更新网站目录 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteUpdateDir' responses: "200": description: OK security: - ApiKeyAuth: [] summary: Update Site Dir tags: - Website x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id formatEN: Update domain [domain] dir formatZH: 更新网站 [domain] 目录 paramKeys: [] /websites/dns: post: consumes: - application/json description: 创建网站 dns parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDnsAccountCreate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Create website dns account tags: - Website DNS x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: Create website dns [name] formatZH: 创建网站 dns [name] paramKeys: [] /websites/dns/del: post: consumes: - application/json description: 删除网站 dns parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteResourceReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete website dns account tags: - Website DNS x-panel-log: BeforeFuntions: - db: website_dns_accounts input_colume: id input_value: id isList: false output_colume: name output_value: name bodyKeys: - id formatEN: Delete website dns [name] formatZH: 删除网站 dns [name] paramKeys: [] /websites/dns/search: post: consumes: - application/json description: 获取网站 dns 列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/dto.PageInfo' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page website dns accounts tags: - Website DNS /websites/dns/update: post: consumes: - application/json description: 更新网站 dns parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDnsAccountUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update website dns account tags: - Website DNS x-panel-log: BeforeFuntions: [] bodyKeys: - name formatEN: Update website dns [name] formatZH: 更新网站 dns [name] paramKeys: [] /websites/domains: post: consumes: - application/json description: 创建网站域名 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDomainCreate' responses: "200": description: OK schema: $ref: '#/definitions/model.WebsiteDomain' security: - ApiKeyAuth: [] summary: Create website domain tags: - Website Domain x-panel-log: BeforeFuntions: [] bodyKeys: - domain formatEN: Create domain [domain] formatZH: 创建域名 [domain] paramKeys: [] /websites/domains/:websiteId: get: consumes: - application/json description: 通过网站 id 查询域名 parameters: - description: request in: path name: websiteId required: true type: integer responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Search website domains by websiteId tags: - Website Domain /websites/domains/del: post: consumes: - application/json description: 删除网站域名 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDomainDelete' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete website domain tags: - Website Domain x-panel-log: BeforeFuntions: - db: website_domains input_colume: id input_value: id isList: false output_colume: domain output_value: domain bodyKeys: - id formatEN: Delete domain [domain] formatZH: 删除域名 [domain] paramKeys: [] /websites/list: get: description: 获取网站列表 responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List websites tags: - Website /websites/log: post: consumes: - application/json description: 操作网站日志 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteLogReq' responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteLog' security: - ApiKeyAuth: [] summary: Operate website log tags: - Website x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id - operate formatEN: '[domain][operate] logs' formatZH: '[domain][operate] 日志' paramKeys: [] /websites/nginx/update: post: consumes: - application/json description: 更新 网站 nginx 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteNginxUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update website nginx conf tags: - Website Nginx x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id formatEN: '[domain] Nginx conf update' formatZH: '[domain] Nginx 配置修改' paramKeys: [] /websites/operate: post: consumes: - application/json description: 操作网站 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteOp' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Operate website tags: - Website x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id - operate formatEN: '[operate] website [domain]' formatZH: '[operate] 网站 [domain]' paramKeys: [] /websites/options: get: description: 获取网站列表 responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: List website names tags: - Website /websites/php/config: post: consumes: - application/json description: 更新 网站 PHP 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsitePHPConfigUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update website php conf tags: - Website PHP x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id formatEN: '[domain] PHP conf update' formatZH: '[domain] PHP 配置修改' paramKeys: [] /websites/php/config/:id: get: consumes: - application/json description: 获取网站 php 配置 parameters: - description: request in: path name: id required: true type: integer responses: "200": description: OK schema: $ref: '#/definitions/response.PHPConfig' security: - ApiKeyAuth: [] summary: Load websit php conf tags: - Website /websites/php/update: post: consumes: - application/json description: 更新 php 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsitePHPFileUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update php conf tags: - Website PHP x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: websiteId isList: false output_colume: primary_domain output_value: domain bodyKeys: - websiteId formatEN: Nginx conf update [domain] formatZH: php 配置修改 [domain] paramKeys: [] /websites/rewrite: post: consumes: - application/json description: 获取伪静态配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxRewriteReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Get rewrite conf tags: - Website /websites/rewrite/update: post: consumes: - application/json description: 更新伪静态配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.NginxRewriteUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update rewrite conf tags: - Website x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: websiteID isList: false output_colume: primary_domain output_value: domain bodyKeys: - websiteID formatEN: Nginx conf rewrite update [domain] formatZH: 伪静态配置修改 [domain] paramKeys: [] /websites/search: post: consumes: - application/json description: 获取网站列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteSearch' responses: "200": description: OK schema: $ref: '#/definitions/dto.PageResult' security: - ApiKeyAuth: [] summary: Page websites tags: - Website /websites/ssl: post: consumes: - application/json description: 创建网站 ssl parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteSSLCreate' responses: "200": description: OK schema: $ref: '#/definitions/request.WebsiteSSLCreate' security: - ApiKeyAuth: [] summary: Create website ssl tags: - Website SSL x-panel-log: BeforeFuntions: [] bodyKeys: - primaryDomain formatEN: Create website ssl [primaryDomain] formatZH: 创建网站 ssl [primaryDomain] paramKeys: [] /websites/ssl/:id: get: consumes: - application/json description: 通过 id 查询 ssl parameters: - description: request in: path name: id required: true type: integer responses: "200": description: "" security: - ApiKeyAuth: [] summary: Search website ssl by id tags: - Website SSL /websites/ssl/del: post: consumes: - application/json description: 删除网站 ssl parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteResourceReq' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Delete website ssl tags: - Website SSL x-panel-log: BeforeFuntions: - db: website_ssls input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id formatEN: Delete ssl [domain] formatZH: 删除 ssl [domain] paramKeys: [] /websites/ssl/renew: post: consumes: - application/json description: 重置网站 ssl parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteSSLRenew' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Reset website ssl tags: - Website SSL x-panel-log: BeforeFuntions: - db: website_ssls input_colume: id input_value: SSLId isList: false output_colume: primary_domain output_value: domain bodyKeys: - SSLId formatEN: Renew ssl [domain] formatZH: 重置 ssl [domain] paramKeys: [] /websites/ssl/resolve: post: consumes: - application/json description: 解析网站 ssl parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteDNSReq' responses: "200": description: OK schema: type: anrry security: - ApiKeyAuth: [] summary: Resolve website ssl tags: - Website SSL /websites/ssl/search: post: consumes: - application/json description: 获取网站 ssl 列表分页 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteSSLSearch' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Page website ssl tags: - Website SSL /websites/ssl/update: post: consumes: - application/json description: 更新 ssl parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteSSLUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update ssl tags: - Website SSL x-panel-log: BeforeFuntions: - db: website_ssls input_colume: id input_value: id isList: false output_colume: primary_domain output_value: domain bodyKeys: - id formatEN: Update ssl config [domain] formatZH: 更新证书设置 [domain] paramKeys: [] /websites/ssl/website/:websiteId: get: consumes: - application/json description: 通过网站 id 查询 ssl parameters: - description: request in: path name: websiteId required: true type: integer responses: "200": description: "" security: - ApiKeyAuth: [] summary: Search website ssl by website id tags: - Website SSL /websites/update: post: consumes: - application/json description: 更新网站 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update website tags: - Website x-panel-log: BeforeFuntions: [] bodyKeys: - primaryDomain formatEN: Update website [primaryDomain] formatZH: 更新网站 [primaryDomain] paramKeys: [] /websites/waf/config: post: consumes: - application/json description: 获取网站 waf 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteWafReq' responses: "200": description: OK schema: $ref: '#/definitions/response.WebsiteWafConfig' security: - ApiKeyAuth: [] summary: Load websit waf conf tags: - Website WAF /websites/waf/update: post: consumes: - application/json description: 更新 网站 waf 配置 parameters: - description: request in: body name: request required: true schema: $ref: '#/definitions/request.WebsiteWafUpdate' responses: "200": description: "" security: - ApiKeyAuth: [] summary: Update website waf conf tags: - Website WAF x-panel-log: BeforeFuntions: - db: websites input_colume: id input_value: websiteId isList: false output_colume: primary_domain output_value: domain bodyKeys: - websiteId formatEN: WAF conf update [domain] formatZH: WAF 配置修改 [domain] paramKeys: [] swagger: "2.0"