// Package docs Code generated by swaggo/swag. DO NOT EDIT package docs import "github.com/swaggo/swag" const docTemplate = `{ "schemes": {{ marshal .Schemes }}, "swagger": "2.0", "info": { "description": "{{escape .Description}}", "title": "{{.Title}}", "contact": {}, "version": "{{.Version}}" }, "host": "{{.Host}}", "basePath": "{{.BasePath}}", "paths": { "/ai/v1/audio/speech": { "post": { "tags": [ "AI 网关" ], "summary": "OpenAI Audio Speech 兼容端点(文本转语音)", "parameters": [ { "description": "OpenAI audio speech 请求体(model/input 必填,voice 见 xAI Grok Voice 列表,language 缺省 auto;未列字段原样透传)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.SpeechRequest" } } ], "responses": { "200": { "description": "音频字节(Content-Type 透传上游,默认 audio/mpeg)", "schema": { "type": "file" } } } } }, "/ai/v1/chat/completions": { "post": { "tags": [ "AI 网关" ], "summary": "OpenAI Chat Completions 兼容端点", "parameters": [ { "description": "OpenAI chat/completions 请求体(支持 stream;经 Responses 转换直通)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.ChatRequest" } } ], "responses": { "200": { "description": "OpenAI 兼容响应(非流式;流式为 SSE,末尾 data: [DONE])", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.ChatResponse" } } } } }, "/ai/v1/embeddings": { "post": { "tags": [ "AI 网关" ], "summary": "OpenAI 兼容向量嵌入", "parameters": [ { "description": "OpenAI embeddings 请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.EmbeddingsRequest" } } ], "responses": { "200": { "description": "OpenAI 兼容响应", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.EmbeddingsResponse" } } } } }, "/ai/v1/messages": { "post": { "tags": [ "AI 网关" ], "summary": "Anthropic Messages 兼容端点", "parameters": [ { "description": "Anthropic messages 请求体(支持 stream;经 OCI OpenAI 兼容面直通;max_tokens 可缺省,默认 8192)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.MessagesRequest" } } ], "responses": { "200": { "description": "Anthropic 兼容响应(非流式;流式为 SSE 事件序列)", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.MessagesResponse" } } } } }, "/ai/v1/models": { "get": { "tags": [ "AI 网关" ], "summary": "可用模型列表", "responses": { "200": { "description": "OpenAI 兼容 models 列表", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.ModelList" } } } } }, "/ai/v1/moderations": { "post": { "tags": [ "AI 网关" ], "summary": "内容审核端点(OCI Guardrails)", "parameters": [ { "description": "审核请求体(input 为字符串或字符串数组,单次至多 8 条;model 接受但忽略)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.ModerationsRequest" } } ], "responses": { "200": { "description": "审核结果(categories/category_scores 为 overall/blocklist/prompt_injection,pii 为扩展字段)", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.ModerationsResponse" } } } } }, "/ai/v1/rerank": { "post": { "tags": [ "AI 网关" ], "summary": "文档重排端点(Cohere Rerank)", "parameters": [ { "description": "重排请求体(model/query/documents 必填,可选 top_n/return_documents)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.RerankRequest" } } ], "responses": { "200": { "description": "重排结果(results[].index 指向入参下标)", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.RerankResponse" } } } } }, "/ai/v1/responses": { "post": { "tags": [ "AI 网关" ], "summary": "OpenAI Responses 兼容端点", "parameters": [ { "description": "OpenAI responses 请求体(支持 stream;服务端工具 web_search/x_search/code_interpreter/mcp 含流式;codex 兼容:namespace 工具组拍平为限定名 function 并在响应还原,custom 工具转 function 包装并回转 custom_tool_call(apply_patch 丢弃),tool_search 剥离,web_search.external_web_access 上游不支持自动处理,超 76KB 流式请求自动改非流式合成 SSE;未列字段原样透传上游)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespRequest" } } ], "responses": { "200": { "description": "OpenAI 兼容响应(非流式;流式为 SSE);直通仅建模常用字段,未列字段原样返回", "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespResponse" } } } } }, "/ai/v1/tts": { "post": { "tags": [ "AI 网关" ], "summary": "xAI 官方格式文本转语音端点", "parameters": [ { "description": "xAI TTS 请求体(text/language 必填,voice_id 缺省 eve;model 为网关扩展,缺省 xai.grok-tts;未列字段原样透传)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.TtsRequest" } } ], "responses": { "200": { "description": "音频字节(Content-Type 透传上游,默认 audio/mpeg)", "schema": { "type": "file" } } } } }, "/api/v1/about": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回构建、运行时长与资源占用信息,「设置 · 关于」页展示", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.aboutResponse" } } } } }, "/api/v1/ai-blacklist": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "模型黑名单列表", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_model_AiModelBlacklist" } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "添加模型黑名单", "parameters": [ { "description": "请求体:{name: 模型名}", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/internal_api.itemResponse-oci-portal_internal_model_AiModelBlacklist" } } } } }, "/api/v1/ai-blacklist/{id}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "移除模型黑名单(重新同步后模型恢复入池)", "parameters": [ { "type": "integer", "description": "黑名单条目 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/ai-channels": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "---- 渠道 ----", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_model_AiChannel" } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "创建 AI 渠道", "parameters": [ { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.ChannelInput" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_model.AiChannel" } } } } }, "/api/v1/ai-channels/{id}": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "更新 AI 渠道", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.ChannelInput" } } ], "responses": { "204": { "description": "无内容" } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "删除 AI 渠道", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/ai-channels/{id}/models": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "渠道模型缓存列表", "parameters": [ { "type": "integer", "description": "渠道 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_model_AiModelCache" } } } } }, "/api/v1/ai-channels/{id}/probe": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "触发探测:服务可见性 + 模型同步 + 配额试调,返回更新后的渠道", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_model.AiChannel" } } } } }, "/api/v1/ai-channels/{id}/sync-models": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "同步渠道模型缓存", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_model_AiModelCache" } } } } }, "/api/v1/ai-channels/{id}/test-model": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "测试渠道模型(max_tokens=16 试调;通过即设为探测验证模型并按需置渠道可用)", "parameters": [ { "type": "integer", "description": "渠道 ID", "name": "id", "in": "path", "required": true }, { "description": "模型名", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.testChannelModelRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_model.AiChannel" } }, "502": { "description": "试调未通过", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } } } } }, "/api/v1/ai-content-logs": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "分页查询内容日志", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.pagedResponse-oci-portal_internal_model_AiCallLog" } } } } }, "/api/v1/ai-keys": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "---- 密钥 ----", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_model_AiKey" } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "生成密钥", "parameters": [ { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "201": { "description": "key 为明文密钥,仅本次返回", "schema": { "$ref": "#/definitions/internal_api.aiKeyCreateResponse" } } } } }, "/api/v1/ai-keys/{id}": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "更新 AI 网关密钥", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "204": { "description": "无内容" } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "删除 AI 网关密钥", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/ai-keys/{id}/content-log": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "设置密钥内容日志窗口", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_model.AiKey" } } } } }, "/api/v1/ai-logs": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "AI 调用日志列表", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.pagedResponse-oci-portal_internal_model_AiContentLog" } } } } }, "/api/v1/ai-model-catalog": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "聚合模型目录", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_service_AggregatedModel" } } } } }, "/api/v1/ai-models": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "---- 聚合模型与调用日志 ----", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_aiwire_Model" } } } } }, "/api/v1/ai-settings": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "AI 网关全局设置", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.aiSettingsResponse" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "AI 管理" ], "summary": "更新 AI 网关全局设置", "parameters": [ { "description": "全量提交;保险丝阈值限 1..1024 KB,上游无响应预算限 30..900 秒", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.aiSettingsResponse" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.aiSettingsResponse" } }, "400": { "description": "Bad Request", "schema": { "type": "object", "additionalProperties": { "type": "string" } } } } } }, "/api/v1/auth/credentials": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "登录凭据摘要", "responses": { "200": { "description": "username 与 passwordLoginDisabled", "schema": { "$ref": "#/definitions/internal_api.credentialsResponse" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "修改登录凭据", "parameters": [ { "description": "新凭据(当前密码必验)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.UpdateCredentialsInput" } } ], "responses": { "204": { "description": "已更新,请重新登录" }, "401": { "description": "当前密码错误", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } } } } }, "/api/v1/auth/identities": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "已绑定外部身份", "responses": { "200": { "description": "items", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_model_UserIdentity" } } } } }, "/api/v1/auth/identities/{id}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "解绑外部身份", "parameters": [ { "type": "integer", "description": "身份 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "已解绑" }, "409": { "description": "最后一个身份不可解绑", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } } } } }, "/api/v1/auth/login": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "认证" ], "summary": "登录", "parameters": [ { "description": "登录凭据", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.loginRequest" } } ], "responses": { "200": { "description": "token 与 expiresAt", "schema": { "$ref": "#/definitions/internal_api.tokenResponse" } }, "401": { "description": "凭据错误", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } }, "428": { "description": "需要两步验证码(totpRequired=true)", "schema": { "$ref": "#/definitions/internal_api.totpRequiredResponse" } } } } }, "/api/v1/auth/logout": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "登出", "responses": { "204": { "description": "令牌已吊销" } } } }, "/api/v1/auth/oauth/providers": { "get": { "tags": [ "认证" ], "summary": "外部登录 provider 列表", "responses": { "200": { "description": "providers 与 passwordLoginDisabled", "schema": { "$ref": "#/definitions/internal_api.oauthProvidersResponse" } } } } }, "/api/v1/auth/oauth/{provider}/authorize": { "get": { "tags": [ "认证" ], "summary": "外部登录授权跳转", "parameters": [ { "type": "string", "description": "oidc / github", "name": "provider", "in": "path", "required": true }, { "type": "string", "description": "bind=绑定当前账号(需 Bearer),缺省登录", "name": "mode", "in": "query" } ], "responses": { "200": { "description": "url", "schema": { "$ref": "#/definitions/internal_api.urlResponse" } } } } }, "/api/v1/auth/oauth/{provider}/callback": { "get": { "tags": [ "认证" ], "summary": "外部登录回调", "parameters": [ { "type": "string", "description": "oidc / github", "name": "provider", "in": "path", "required": true }, { "type": "string", "description": "授权流程 state", "name": "state", "in": "query", "required": true }, { "type": "string", "description": "授权码", "name": "code", "in": "query", "required": true } ], "responses": { "302": { "description": "登录 token 经 fragment 回前端,绑定回设置页" } } } }, "/api/v1/auth/password-login": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "密码登录开关", "parameters": [ { "description": "{disabled: bool}", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "204": { "description": "已保存" }, "409": { "description": "未绑定外部身份", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } } } } }, "/api/v1/auth/revoke-sessions": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "撤销全部会话", "responses": { "200": { "description": "新 token 与 expiresAt", "schema": { "$ref": "#/definitions/internal_api.tokenResponse" } } } } }, "/api/v1/auth/totp": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "两步验证状态", "responses": { "200": { "description": "enabled", "schema": { "$ref": "#/definitions/internal_api.enabledResponse" } } } } }, "/api/v1/auth/totp/activate": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "激活两步验证", "parameters": [ { "description": "{code: 6 位验证码}", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "204": { "description": "已启用" } } } }, "/api/v1/auth/totp/disable": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "停用两步验证", "parameters": [ { "description": "{password 或 code 任一确认}", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "204": { "description": "已停用" } } } }, "/api/v1/auth/totp/setup": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "认证" ], "summary": "发起两步验证设置", "responses": { "200": { "description": "secret 与 otpauthUri", "schema": { "$ref": "#/definitions/internal_api.totpSetupResponse" } }, "409": { "description": "已启用", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } } } } }, "/api/v1/console-sessions/{sessionId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "网页控制台" ], "summary": "关闭网页控制台会话", "parameters": [ { "type": "string", "description": "会话 ID", "name": "sessionId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/console-sessions/{sessionId}/ws": { "get": { "tags": [ "网页控制台" ], "summary": "控制台 WebSocket 数据面", "parameters": [ { "type": "string", "description": "会话 ID", "name": "sessionId", "in": "path", "required": true }, { "type": "string", "description": "JWT(浏览器 WebSocket 无法带头,经 query 传递)", "name": "token", "in": "query", "required": true } ], "responses": { "101": { "description": "升级为 WebSocket" } } } }, "/api/v1/log-events": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "回传日志事件列表", "parameters": [ { "type": "integer", "description": "按配置过滤", "name": "configId", "in": "query" }, { "type": "string", "description": "关键字", "name": "q", "in": "query" } ], "responses": { "200": { "description": "items 与 total", "schema": { "$ref": "#/definitions/internal_api.pagedResponse-oci-portal_internal_model_LogEvent" } } } } }, "/api/v1/oci-configs": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "租户配置列表", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.ConfigSummary" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "导入租户配置", "parameters": [ { "description": "API Key 配置(私钥密文落库)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.importRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_model.OciConfig" } } } } }, "/api/v1/oci-configs/{id}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "租户配置详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_model.OciConfig" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "更新租户配置", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "可更新字段(别名/分组/代理/多区域开关等)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "config 与 changes 字段变更对照", "schema": { "$ref": "#/definitions/internal_api.configChangesResponse" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "description": "删除租户配置及其本地关联任务、快照、回传、告警和 AI 渠道数据,并撤销 Webhook 密钥;不删除 OCI 云端资源。", "tags": [ "租户配置" ], "summary": "删除租户配置", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/audit-events": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "批式懒加载查询租户 OCI 审计事件", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "续查游标(上次响应原样带回)", "name": "cursor", "in": "query" }, { "type": "integer", "description": "单批目标条数,缺省 100,上限 200", "name": "limit", "in": "query" }, { "type": "string", "description": "检索关键字(服务端全文匹配,支持 * 通配;仅首查生效)", "name": "q", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.AuditEventsView" } } } } }, "/api/v1/oci-configs/{id}/audit-events/detail": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "按 eventId 取回原始事件 JSON:缓存命中秒开,", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "raw 为事件原文 JSON", "schema": { "$ref": "#/definitions/internal_api.rawDetailResponse" } } } } }, "/api/v1/oci-configs/{id}/availability-domains": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "可用域列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "type": "string" } } } } } }, "/api/v1/oci-configs/{id}/boot-volume-attachments/{attachmentId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "分离引导卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "attachmentId", "name": "attachmentId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/boot-volumes": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "引导卷列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.BootVolume" } } } } } }, "/api/v1/oci-configs/{id}/boot-volumes/{bootVolumeId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "引导卷详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "bootVolumeId", "name": "bootVolumeId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.BootVolume" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "更新引导卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "bootVolumeId", "name": "bootVolumeId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateBootVolumeRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.BootVolume" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "删除引导卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "bootVolumeId", "name": "bootVolumeId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/cached-compartments": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "返回筛选器用区间列表:未开多区间支持返回空数组", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Compartment" } } } } } }, "/api/v1/oci-configs/{id}/cached-regions": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "返回筛选器用区域列表:未开多区域支持只含默认区域", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.RegionSubscriptionView" } } } } } }, "/api/v1/oci-configs/{id}/compartments": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "列出租户下全部 ACTIVE compartment", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Compartment" } } } } } }, "/api/v1/oci-configs/{id}/console-connections/{connectionId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "删除实例控制台连接", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "connectionId", "name": "connectionId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/costs": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "成本" ], "summary": "配置成本快照", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.CostItem" } } } } } }, "/api/v1/oci-configs/{id}/domains": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "租户身份域列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.IdentityDomain" } } } } } }, "/api/v1/oci-configs/{id}/identity-providers": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "身份提供商列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.IdentityProviderInfo" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "创建身份提供商(SAML)", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createIdpRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.IdentityProviderInfo" } } } } }, "/api/v1/oci-configs/{id}/identity-providers/{idpId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "删除身份提供商", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "idpId", "name": "idpId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/identity-providers/{idpId}/activate": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "激活身份提供商", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "idpId", "name": "idpId", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.IdentityProviderInfo" } } } } }, "/api/v1/oci-configs/{id}/identity-settings": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "身份域设置", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.IdentitySettingInfo" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "更新身份域设置", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.IdentitySettingInfo" } } } } }, "/api/v1/oci-configs/{id}/images": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "镜像列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Image" } } } } } }, "/api/v1/oci-configs/{id}/images/{imageId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "镜像详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "imageId", "name": "imageId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Image" } } } } }, "/api/v1/oci-configs/{id}/instances": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "实例列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Instance" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "创建实例", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createInstanceRequest" } } ], "responses": { "201": { "description": "部分成功仍 201,errors 为逐台失败信息", "schema": { "$ref": "#/definitions/internal_api.createInstancesResponse" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "实例详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Instance" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "更新实例", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateInstanceRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Instance" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "终止实例", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/action": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "实例电源操作(启停/重启)", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.instanceActionRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Instance" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/boot-volume-attachments": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "引导卷附件列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.BootVolumeAttachment" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "附加引导卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.attachBootVolumeRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.BootVolumeAttachment" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/change-public-ip": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "---- 实例 IP ----", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.publicIpResponse" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/console-connections": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "实例控制台连接列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.ConsoleConnection" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "创建实例控制台连接", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createConsoleConnectionRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.ConsoleConnection" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/console-sessions": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "网页控制台" ], "summary": "创建网页控制台会话", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "实例 OCID", "name": "instanceId", "in": "path", "required": true }, { "description": "{type: serial|vnc}", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "201": { "description": "sessionId 与 type", "schema": { "$ref": "#/definitions/internal_api.webConsoleSessionResponse" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/ipv6-addresses": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "实例添加 IPv6 地址", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/internal_api.ipv6AddressResponse" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "移除实例 IPv6 地址", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/replace-boot-volume": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "更换实例引导卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.attachBootVolumeRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.BootVolumeAttachment" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/traffic": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "---- 流量与成本 ----", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.InstanceTraffic" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/vnics": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "实例 VNIC 列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Vnic" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "附加 VNIC", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.attachVnicRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Vnic" } } } } }, "/api/v1/oci-configs/{id}/instances/{instanceId}/volume-attachments": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "卷附件列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.VolumeAttachment" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "附加块存储卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "instanceId", "name": "instanceId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.attachVolumeRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.VolumeAttachment" } } } } }, "/api/v1/oci-configs/{id}/limits": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "服务限额查询", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.LimitValue" } } } } } }, "/api/v1/oci-configs/{id}/limits/services": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "限额服务列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.LimitService" } } } } } }, "/api/v1/oci-configs/{id}/log-relay": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "查询 OCI 侧链路状态与关键事件清单", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.RelayView" } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "一键建立回传链路", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.RelayView" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "逆序销毁链路并撤销 secret", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/log-webhook": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "查询配置的回调地址", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.logWebhookStatusResponse" } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "生成", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.LogWebhookInfo" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "撤销配置的回传 secret,旧回调地址随即失效", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/notification-recipients": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "---- 域通知收件人与密码策略 ----", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.NotificationRecipients" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "更新通知收件人", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.NotificationRecipients" } } } } }, "/api/v1/oci-configs/{id}/password-policies": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "密码策略列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.PasswordPolicyInfo" } } } } } }, "/api/v1/oci-configs/{id}/password-policies/{policyId}": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "更新密码策略", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "policyId", "name": "policyId", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.PasswordPolicyInfo" } } } } }, "/api/v1/oci-configs/{id}/region-subscriptions": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "区域订阅列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.RegionSubscriptionView" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "订阅新区域", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.subscribeRegionRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.RegionSubscriptionView" } } } } } }, "/api/v1/oci-configs/{id}/saml-metadata": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "下载 SAML 元数据", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "SAML 元数据 XML(附件下载)", "schema": { "type": "file" } } } } }, "/api/v1/oci-configs/{id}/security-lists": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "安全列表清单", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityList" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "创建安全列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createSecurityListRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityList" } } } } }, "/api/v1/oci-configs/{id}/security-lists/{securityListId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "安全列表详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "securityListId", "name": "securityListId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityList" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "更新安全列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "securityListId", "name": "securityListId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateSecurityListRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityList" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "删除安全列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "securityListId", "name": "securityListId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/shapes": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "实例形状列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.ComputeShape" } } } } } }, "/api/v1/oci-configs/{id}/sign-on-exemptions": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "创建 MFA 豁免规则", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.SignOnRuleInfo" } } } } }, "/api/v1/oci-configs/{id}/sign-on-exemptions/{ruleId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "删除 MFA 豁免规则", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "ruleId", "name": "ruleId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/sign-on-rules": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "单点登录规则列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SignOnRuleInfo" } } } } } }, "/api/v1/oci-configs/{id}/subnets": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "子网列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Subnet" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "创建子网", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createSubnetRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Subnet" } } } } }, "/api/v1/oci-configs/{id}/subnets/{subnetId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "子网详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "subnetId", "name": "subnetId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Subnet" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "更新子网", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "subnetId", "name": "subnetId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.renameRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.Subnet" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "删除子网", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "subnetId", "name": "subnetId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/subscriptions": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "订阅列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SubscriptionInfo" } } } } } }, "/api/v1/oci-configs/{id}/subscriptions/{subscriptionId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "订阅详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "subscriptionId", "name": "subscriptionId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.SubscriptionDetail" } } } } }, "/api/v1/oci-configs/{id}/users": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "租户 IAM 用户列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.TenantUser" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "创建租户 IAM 用户", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createTenantUserRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.TenantUser" } } } } }, "/api/v1/oci-configs/{id}/users/{userId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "租户用户详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "userId", "name": "userId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.TenantUserDetail" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "更新租户 IAM 用户", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "userId", "name": "userId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateTenantUserRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.TenantUser" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "删除租户 IAM 用户", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "userId", "name": "userId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/users/{userId}/api-keys": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "清除用户全部 API Key", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "userId", "name": "userId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.deletedApiKeysResponse" } } } } }, "/api/v1/oci-configs/{id}/users/{userId}/mfa-devices": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "清除用户 MFA 设备", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "userId", "name": "userId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.deletedTotpResponse" } } } } }, "/api/v1/oci-configs/{id}/users/{userId}/reset-password": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户 IAM" ], "summary": "重置租户用户密码", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "身份域 OCID(缺省 Default 域)", "name": "domainId", "in": "query" }, { "type": "string", "description": "userId", "name": "userId", "in": "path", "required": true } ], "responses": { "200": { "description": "一次性明文密码", "schema": { "$ref": "#/definitions/internal_api.passwordResponse" } } } } }, "/api/v1/oci-configs/{id}/vcns": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "VCN 列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.VCN" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "创建 VCN", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createVCNRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.VCN" } } } } }, "/api/v1/oci-configs/{id}/vcns/{vcnId}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "VCN 详情", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "vcnId", "name": "vcnId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.VCN" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "更新 VCN", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "vcnId", "name": "vcnId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.renameRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_oci.VCN" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "删除 VCN", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "vcnId", "name": "vcnId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/vcns/{vcnId}/enable-ipv6": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "网络" ], "summary": "VCN 启用 IPv6", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "vcnId", "name": "vcnId", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.enableIPv6Request" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.ipv6StepsResponse" } } } } }, "/api/v1/oci-configs/{id}/verify": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "验证配置连通性并刷新画像", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "config 与 changes 字段变更对照", "schema": { "$ref": "#/definitions/internal_api.configChangesResponse" } } } } }, "/api/v1/oci-configs/{id}/vnic-attachments/{attachmentId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "分离 VNIC", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "attachmentId", "name": "attachmentId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/vnics/{vnicId}/ipv6-addresses": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "计算" ], "summary": "为指定 VNIC 添加 IPv6", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "vnicId", "name": "vnicId", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/internal_api.addressResponse" } } } } }, "/api/v1/oci-configs/{id}/volume-attachments/{attachmentId}": { "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "分离块存储卷", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "attachmentId", "name": "attachmentId", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/oci-configs/{id}/volumes": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "存储" ], "summary": "块存储卷列表", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.BlockVolume" } } } } } }, "/api/v1/overview": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "返回总览页聚合数据", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.Overview" } } } } }, "/api/v1/proxies": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "代理列表", "responses": { "200": { "description": "items", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_service_ProxyView" } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "创建代理", "parameters": [ { "description": "代理配置(密码只写不回)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.ProxyInput" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_service.ProxyView" } } } } }, "/api/v1/proxies/import": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "批量导入代理", "parameters": [ { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.ImportResult" } } } } }, "/api/v1/proxies/{id}": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "更新代理", "parameters": [ { "type": "integer", "description": "代理 ID", "name": "id", "in": "path", "required": true }, { "description": "代理配置(密码缺省沿用)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.ProxyInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.ProxyView" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "删除代理", "parameters": [ { "type": "integer", "description": "代理 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/proxies/{id}/probe": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "手动重测代理出口地区,同步返回最新视图", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.ProxyView" } } } } }, "/api/v1/proxies/{id}/tenants": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "设置代理关联的租户全集", "parameters": [ { "type": "integer", "description": "代理 ID", "name": "id", "in": "path", "required": true }, { "description": "请求体 {\\", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "usedBy", "schema": { "$ref": "#/definitions/internal_api.usedByResponse" } } } } }, "/api/v1/regions": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "租户配置" ], "summary": "返回本地维护的完整区域表", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.RegionInfo" } } } } } }, "/api/v1/settings/notify-channels": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回全部通知渠道的脱敏视图", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_service_NotifyChannelView" } } } } }, "/api/v1/settings/notify-channels/{type}": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "保存单渠道配置并返回全渠道最新视图", "parameters": [ { "type": "string", "description": "渠道类型(webhook/ntfy/bark/smtp)", "name": "type", "in": "path", "required": true }, { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateNotifyChannelRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_service_NotifyChannelView" } } } } }, "/api/v1/settings/notify-channels/{type}/test": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "向指定渠道发送测试消息", "parameters": [ { "type": "string", "description": "渠道类型(webhook/ntfy/bark/smtp)", "name": "type", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/settings/notify-events": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回全部通知事件开关", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.NotifyEventsView" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "全量保存五个事件开关并返回最新值", "parameters": [ { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.NotifyEventsView" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.NotifyEventsView" } } } } }, "/api/v1/settings/notify-templates": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回全部通知模板", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/internal_api.itemsResponse-oci-portal_internal_service_NotifyTemplateView" } } } } }, "/api/v1/settings/notify-templates/{kind}": { "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "保存单个通知模板", "parameters": [ { "type": "string", "description": "kind", "name": "kind", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/settings/notify-templates/{kind}/test": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "用示例变量渲染模板并同步发送测试消息", "parameters": [ { "type": "string", "description": "kind", "name": "kind", "in": "path", "required": true }, { "description": "请求体(见接口说明)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/settings/oauth": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "OAuth provider 配置", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.OAuthProvidersView" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "保存 OAuth provider 配置", "parameters": [ { "description": "provider 配置", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.UpdateOAuthInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.OAuthProvidersView" } } } } }, "/api/v1/settings/security": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回安全设置", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.SecuritySettings" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "保存安全设置并返回最新值", "parameters": [ { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.SecuritySettings" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.SecuritySettings" } } } } }, "/api/v1/settings/task": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回任务行为设置", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.TaskSettingsView" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "保存任务行为设置并返回最新值", "parameters": [ { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/oci-portal_internal_service.TaskSettingsView" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.TaskSettingsView" } } } } }, "/api/v1/settings/telegram": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "返回脱敏后的 Telegram 配置,绝不回 token 明文", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.TelegramView" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "保存配置并返回最新脱敏视图", "parameters": [ { "description": "请求体", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateTelegramRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_service.TelegramView" } } } } }, "/api/v1/settings/telegram/test": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "用当前已保存配置同步发送一条测试消息", "responses": { "204": { "description": "无内容" } } } }, "/api/v1/system-logs": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "设置" ], "summary": "系统操作日志列表", "responses": { "200": { "description": "items 与 total", "schema": { "$ref": "#/definitions/internal_api.pagedResponse-oci-portal_internal_model_SystemLog" } } } } }, "/api/v1/tasks": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "任务列表", "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.Task" } } } } }, "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "创建任务", "parameters": [ { "description": "任务定义(类型/cron/payload)", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.createTaskRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/oci-portal_internal_model.Task" } } } } }, "/api/v1/tasks/{id}": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "任务详情", "parameters": [ { "type": "integer", "description": "任务 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_model.Task" } } } }, "put": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "更新任务", "parameters": [ { "type": "integer", "description": "任务 ID", "name": "id", "in": "path", "required": true }, { "description": "可更新字段", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/internal_api.updateTaskRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/oci-portal_internal_model.Task" } } } }, "delete": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "删除任务", "parameters": [ { "type": "integer", "description": "任务 ID", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "无内容" } } } }, "/api/v1/tasks/{id}/logs": { "get": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "任务执行日志", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.TaskLog" } } } } } }, "/api/v1/tasks/{id}/run": { "post": { "security": [ { "BearerAuth": [] } ], "tags": [ "任务与日志回传" ], "summary": "立即执行任务(异步触发,结果经任务日志轮询获取)", "parameters": [ { "type": "integer", "description": "配置 ID", "name": "id", "in": "path", "required": true } ], "responses": { "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/internal_api.triggerResponse" } }, "409": { "description": "任务正在执行中", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } } } } }, "/api/v1/webhooks/oci-logs/{secret}": { "post": { "tags": [ "任务与日志回传" ], "summary": "OCI 日志回传入口(ONS HTTPS 订阅投递)", "parameters": [ { "type": "string", "description": "面板生成的回传密钥(鉴权凭据)", "name": "secret", "in": "path", "required": true }, { "description": "ONS 消息原文(SubscriptionConfirmation / Notification)", "name": "body", "in": "body", "required": true, "schema": { "type": "object" } } ], "responses": { "200": { "description": "已受理" }, "403": { "description": "时间戳超窗或证书源非 Oracle 域", "schema": { "$ref": "#/definitions/internal_api.errorResponse" } }, "404": { "description": "secret 无效(不暴露端点存在性)" } } } } }, "definitions": { "internal_api.aboutResources": { "type": "object", "properties": { "cpuAvgPercent": { "type": "number" }, "dbBytes": { "type": "integer" }, "dbEngine": { "type": "string" }, "goroutines": { "type": "integer" }, "memHeapBytes": { "type": "integer" }, "memSysBytes": { "type": "integer" }, "numCpu": { "type": "integer" } } }, "internal_api.aboutResponse": { "type": "object", "properties": { "buildTime": { "type": "string" }, "goVersion": { "type": "string" }, "platform": { "type": "string" }, "resources": { "$ref": "#/definitions/internal_api.aboutResources" }, "startedAt": { "type": "string" }, "uptimeSeconds": { "type": "integer" }, "version": { "type": "string" } } }, "internal_api.addressResponse": { "type": "object", "properties": { "address": { "type": "string" } } }, "internal_api.aiKeyCreateResponse": { "type": "object", "properties": { "item": { "$ref": "#/definitions/oci-portal_internal_model.AiKey" }, "key": { "type": "string" } } }, "internal_api.aiSettingsResponse": { "type": "object", "properties": { "filterDeprecated": { "description": "FilterDeprecated 开启后已宣布弃用(即使未退役)的模型从列表与路由中排除", "type": "boolean" }, "grokWebSearch": { "description": "GrokWebSearch / GrokXSearch 是 xai. 模型服务端搜索工具默认注入开关;\n请求 tools 已包含同名工具时不覆盖", "type": "boolean" }, "grokXSearch": { "type": "boolean" }, "streamGuardEnabled": { "description": "StreamGuardEnabled / StreamGuardKB 是 Responses 流式保险丝:\ninstructions+tools 合计超阈值(KB)的流式请求改非流式上游并合成 SSE", "type": "boolean" }, "streamGuardKB": { "type": "integer" }, "upstreamWaitSeconds": { "description": "UpstreamWaitSeconds 是 responses 直通的上游无响应预算(秒):非流式为单次\n尝试总超时,流式为等待响应头预算;multi-agent/搜索类模型需远超 60s", "type": "integer" } } }, "internal_api.attachBootVolumeRequest": { "type": "object", "required": [ "bootVolumeId" ], "properties": { "bootVolumeId": { "type": "string" }, "region": { "type": "string" } } }, "internal_api.attachVnicRequest": { "type": "object", "required": [ "subnetId" ], "properties": { "assignIpv6": { "description": "AssignIpv6 为 true 时同时自动分配一个 IPv6(要求子网已启用 IPv6)。", "type": "boolean" }, "assignPublicIp": { "type": "boolean" }, "displayName": { "type": "string" }, "privateIp": { "type": "string" }, "region": { "type": "string" }, "subnetId": { "type": "string" } } }, "internal_api.attachVolumeRequest": { "type": "object", "required": [ "volumeId" ], "properties": { "readOnly": { "type": "boolean" }, "region": { "type": "string" }, "volumeId": { "type": "string" } } }, "internal_api.configChangesResponse": { "type": "object", "properties": { "changes": { "$ref": "#/definitions/oci-portal_internal_service.Changes" }, "config": { "$ref": "#/definitions/oci-portal_internal_model.OciConfig" } } }, "internal_api.createConsoleConnectionRequest": { "type": "object", "required": [ "sshPublicKey" ], "properties": { "region": { "type": "string" }, "sshPublicKey": { "type": "string" } } }, "internal_api.createIdpRequest": { "type": "object", "required": [ "metadata", "name" ], "properties": { "assertionAttribute": { "type": "string" }, "description": { "type": "string" }, "iconUrl": { "type": "string" }, "jitAssignAdminGroup": { "type": "boolean" }, "jitCreate": { "type": "boolean" }, "jitEnabled": { "type": "boolean" }, "jitMapEmail": { "type": "boolean" }, "jitUpdate": { "type": "boolean" }, "metadata": { "type": "string" }, "name": { "type": "string" }, "nameIdFormat": { "type": "string" }, "userStoreAttribute": { "type": "string" } } }, "internal_api.createInstanceRequest": { "type": "object", "required": [ "displayName", "shape" ], "properties": { "assignIpv6": { "type": "boolean" }, "assignPublicIp": { "type": "boolean" }, "availabilityDomain": { "description": "为空时默认使用第一个可用域", "type": "string" }, "bootVolumeId": { "type": "string" }, "bootVolumeSizeGBs": { "type": "integer" }, "bootVolumeVpusPerGB": { "type": "integer" }, "compartmentId": { "description": "为空时建在租户根", "type": "string" }, "count": { "description": "批量创建数量,缺省 1,上限 10", "type": "integer" }, "displayName": { "type": "string" }, "generateRootPassword": { "description": "服务端生成随机 root 密码并写入 TAG RootPassword", "type": "boolean" }, "imageId": { "type": "string" }, "memoryInGBs": { "type": "number" }, "ocpus": { "type": "number" }, "region": { "type": "string" }, "rootPassword": { "type": "string" }, "shape": { "type": "string" }, "sshPublicKey": { "type": "string" }, "subnetId": { "description": "为空时自动创建 VCN 与子网", "type": "string" }, "userData": { "type": "string" } } }, "internal_api.createInstancesResponse": { "type": "object", "properties": { "errors": { "type": "array", "items": { "type": "string" } }, "instances": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.Instance" } } } }, "internal_api.createSecurityListRequest": { "type": "object", "required": [ "displayName", "vcnId" ], "properties": { "displayName": { "type": "string" }, "egressRules": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityRule" } }, "ingressRules": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityRule" } }, "region": { "type": "string" }, "vcnId": { "type": "string" } } }, "internal_api.createSubnetRequest": { "type": "object", "required": [ "cidrBlock", "displayName", "vcnId" ], "properties": { "cidrBlock": { "type": "string" }, "displayName": { "type": "string" }, "dnsLabel": { "type": "string" }, "ipv6CidrBlock": { "type": "string" }, "prohibitPublicIp": { "type": "boolean" }, "region": { "type": "string" }, "vcnId": { "type": "string" } } }, "internal_api.createTaskRequest": { "type": "object", "required": [ "cronExpr", "name", "type" ], "properties": { "cronExpr": { "type": "string" }, "name": { "type": "string" }, "payload": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "type": { "type": "string" } } }, "internal_api.createTenantUserRequest": { "type": "object", "required": [ "familyName", "givenName", "name" ], "properties": { "addToAdminGroup": { "type": "boolean" }, "description": { "type": "string" }, "email": { "type": "string" }, "familyName": { "type": "string" }, "givenName": { "type": "string" }, "grantDomainAdmin": { "description": "同时勾选时先授身份域管理员,再加入管理员组", "type": "boolean" }, "name": { "type": "string" } } }, "internal_api.createVCNRequest": { "type": "object", "required": [ "cidrBlock", "displayName" ], "properties": { "cidrBlock": { "type": "string" }, "compartmentId": { "description": "为空时建在租户根", "type": "string" }, "displayName": { "type": "string" }, "dnsLabel": { "type": "string" }, "enableIpv6": { "description": "缺省默认启用", "type": "boolean" }, "region": { "type": "string" } } }, "internal_api.credentialsResponse": { "type": "object", "properties": { "passwordLoginDisabled": { "type": "boolean" }, "username": { "type": "string" } } }, "internal_api.deletedApiKeysResponse": { "type": "object", "properties": { "deletedApiKeys": { "type": "integer" } } }, "internal_api.deletedTotpResponse": { "type": "object", "properties": { "deletedTotpDevices": { "type": "integer" } } }, "internal_api.enableIPv6Request": { "type": "object", "properties": { "region": { "type": "string" } } }, "internal_api.enabledResponse": { "type": "object", "properties": { "enabled": { "type": "boolean" } } }, "internal_api.errorResponse": { "type": "object", "properties": { "error": { "type": "string" } } }, "internal_api.importRequest": { "type": "object", "required": [ "alias", "privateKey" ], "properties": { "alias": { "type": "string" }, "configIni": { "type": "string" }, "fingerprint": { "type": "string" }, "group": { "description": "面板内自定义分组,可空", "type": "string" }, "multiCompartment": { "description": "开启后 compartment 入库缓存", "type": "boolean" }, "multiRegion": { "description": "开启后订阅区域入库缓存", "type": "boolean" }, "passphrase": { "type": "string" }, "privateKey": { "type": "string" }, "proxyId": { "description": "关联出站代理,null 直连", "type": "integer" }, "region": { "type": "string" }, "tenancyOcid": { "type": "string" }, "userOcid": { "type": "string" } } }, "internal_api.instanceActionRequest": { "type": "object", "required": [ "action" ], "properties": { "action": { "type": "string" }, "region": { "type": "string" } } }, "internal_api.ipv6AddressResponse": { "type": "object", "properties": { "ipv6Address": { "type": "string" } } }, "internal_api.ipv6StepsResponse": { "type": "object", "properties": { "steps": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.IPv6Step" } } } }, "internal_api.itemResponse-oci-portal_internal_model_AiModelBlacklist": { "type": "object", "properties": { "item": { "$ref": "#/definitions/oci-portal_internal_model.AiModelBlacklist" } } }, "internal_api.itemsResponse-oci-portal_internal_aiwire_Model": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.Model" } } } }, "internal_api.itemsResponse-oci-portal_internal_model_AiChannel": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.AiChannel" } } } }, "internal_api.itemsResponse-oci-portal_internal_model_AiKey": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.AiKey" } } } }, "internal_api.itemsResponse-oci-portal_internal_model_AiModelBlacklist": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.AiModelBlacklist" } } } }, "internal_api.itemsResponse-oci-portal_internal_model_AiModelCache": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.AiModelCache" } } } }, "internal_api.itemsResponse-oci-portal_internal_model_UserIdentity": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.UserIdentity" } } } }, "internal_api.itemsResponse-oci-portal_internal_service_AggregatedModel": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.AggregatedModel" } } } }, "internal_api.itemsResponse-oci-portal_internal_service_NotifyChannelView": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.NotifyChannelView" } } } }, "internal_api.itemsResponse-oci-portal_internal_service_NotifyTemplateView": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.NotifyTemplateView" } } } }, "internal_api.itemsResponse-oci-portal_internal_service_ProxyView": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.ProxyView" } } } }, "internal_api.logWebhookStatusResponse": { "type": "object", "properties": { "exists": { "type": "boolean" }, "webhook": { "$ref": "#/definitions/oci-portal_internal_service.LogWebhookInfo" } } }, "internal_api.loginRequest": { "type": "object", "required": [ "password", "username" ], "properties": { "password": { "type": "string", "maxLength": 128 }, "totpCode": { "description": "两步验证码;账号已启用 TOTP 时必填,缺失返回 428", "type": "string", "maxLength": 8 }, "username": { "description": "字段长度上限防超长输入撑爆登录守卫与 bcrypt(S-03)", "type": "string", "maxLength": 64 } } }, "internal_api.oauthProvidersResponse": { "type": "object", "properties": { "passwordLoginDisabled": { "type": "boolean" }, "providers": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.ProviderInfo" } } } }, "internal_api.pagedResponse-oci-portal_internal_model_AiCallLog": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.AiCallLog" } }, "total": { "type": "integer" } } }, "internal_api.pagedResponse-oci-portal_internal_model_AiContentLog": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.AiContentLog" } }, "total": { "type": "integer" } } }, "internal_api.pagedResponse-oci-portal_internal_model_LogEvent": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.LogEvent" } }, "total": { "type": "integer" } } }, "internal_api.pagedResponse-oci-portal_internal_model_SystemLog": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_model.SystemLog" } }, "total": { "type": "integer" } } }, "internal_api.passwordResponse": { "type": "object", "properties": { "password": { "type": "string" } } }, "internal_api.publicIpResponse": { "type": "object", "properties": { "publicIp": { "type": "string" } } }, "internal_api.rawDetailResponse": { "type": "object", "properties": { "raw": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" } } }, "internal_api.renameRequest": { "type": "object", "required": [ "displayName" ], "properties": { "displayName": { "type": "string" }, "region": { "type": "string" } } }, "internal_api.subscribeRegionRequest": { "type": "object", "required": [ "regionKey" ], "properties": { "regionKey": { "type": "string" } } }, "internal_api.testChannelModelRequest": { "type": "object", "required": [ "model" ], "properties": { "model": { "type": "string" } } }, "internal_api.tokenResponse": { "type": "object", "properties": { "expiresAt": { "type": "string" }, "token": { "type": "string" } } }, "internal_api.totpRequiredResponse": { "type": "object", "properties": { "error": { "type": "string" }, "totpRequired": { "type": "boolean" } } }, "internal_api.totpSetupResponse": { "type": "object", "properties": { "otpauthUri": { "type": "string" }, "secret": { "type": "string" } } }, "internal_api.triggerResponse": { "type": "object", "properties": { "triggered": { "type": "boolean" } } }, "internal_api.updateBootVolumeRequest": { "type": "object", "properties": { "displayName": { "type": "string" }, "region": { "type": "string" }, "sizeInGBs": { "type": "integer" }, "vpusPerGB": { "type": "integer" } } }, "internal_api.updateInstanceRequest": { "type": "object", "properties": { "displayName": { "type": "string" }, "memoryInGBs": { "type": "number" }, "ocpus": { "type": "number" }, "region": { "type": "string" }, "shape": { "description": "更换 shape,运行中实例会自动重启", "type": "string" } } }, "internal_api.updateNotifyChannelRequest": { "type": "object", "properties": { "bodyTemplate": { "type": "string" }, "enabled": { "type": "boolean" }, "from": { "type": "string" }, "host": { "type": "string" }, "port": { "type": "integer" }, "secret": { "type": "string" }, "server": { "type": "string" }, "to": { "type": "string" }, "topic": { "type": "string" }, "url": { "type": "string" }, "username": { "type": "string" } } }, "internal_api.updateSecurityListRequest": { "type": "object", "properties": { "displayName": { "type": "string" }, "egressRules": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityRule" } }, "ingressRules": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityRule" } }, "region": { "type": "string" } } }, "internal_api.updateTaskRequest": { "type": "object", "properties": { "cronExpr": { "type": "string" }, "name": { "type": "string" }, "payload": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "status": { "type": "string" } } }, "internal_api.updateTelegramRequest": { "type": "object", "properties": { "botToken": { "type": "string" }, "chatId": { "type": "string" }, "enabled": { "type": "boolean" } } }, "internal_api.updateTenantUserRequest": { "type": "object", "properties": { "addToAdminGroup": { "type": "boolean" }, "description": { "type": "string" }, "email": { "type": "string" }, "familyName": { "type": "string" }, "givenName": { "type": "string" }, "grantDomainAdmin": { "type": "boolean" } } }, "internal_api.urlResponse": { "type": "object", "properties": { "url": { "type": "string" } } }, "internal_api.usedByResponse": { "type": "object", "properties": { "usedBy": { "type": "integer" } } }, "internal_api.webConsoleSessionResponse": { "type": "object", "properties": { "sessionId": { "type": "string" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.AnthBlock": { "type": "object", "properties": { "content": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "id": { "description": "tool_use", "type": "string" }, "input": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "is_error": { "type": "boolean" }, "name": { "type": "string" }, "source": { "description": "image", "allOf": [ { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" } ] }, "text": { "type": "string" }, "tool_use_id": { "description": "tool_result", "type": "string" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.AnthContent": { "type": "object", "properties": { "blocks": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthBlock" } }, "text": { "type": "string" } } }, "oci-portal_internal_aiwire.AnthMessage": { "type": "object", "properties": { "content": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthContent" }, "role": { "type": "string" } } }, "oci-portal_internal_aiwire.AnthOutputConfig": { "type": "object", "properties": { "effort": { "type": "string" } } }, "oci-portal_internal_aiwire.AnthTool": { "type": "object", "properties": { "description": { "type": "string" }, "input_schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "name": { "type": "string" } } }, "oci-portal_internal_aiwire.AnthUsage": { "type": "object", "properties": { "cache_read_input_tokens": { "description": "CacheReadInputTokens 是缓存命中读取数;OCI 隐式缓存无「写入」计数,cache_creation 恒缺", "type": "integer" }, "input_tokens": { "type": "integer" }, "output_tokens": { "type": "integer" } } }, "oci-portal_internal_aiwire.AnyJSON": { "type": "object" }, "oci-portal_internal_aiwire.ChatMessage": { "type": "object", "properties": { "content": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "role": { "type": "string" }, "tool_call_id": { "type": "string" }, "tool_calls": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.ToolCall" } } } }, "oci-portal_internal_aiwire.ChatRequest": { "type": "object", "properties": { "max_completion_tokens": { "type": "integer" }, "max_tokens": { "type": "integer" }, "messages": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.ChatMessage" } }, "model": { "type": "string" }, "parallel_tool_calls": { "type": "boolean" }, "reasoning_effort": { "type": "string" }, "response_format": { "$ref": "#/definitions/oci-portal_internal_aiwire.ResponseFormat" }, "stream": { "type": "boolean" }, "stream_options": { "$ref": "#/definitions/oci-portal_internal_aiwire.StreamOptions" }, "temperature": { "type": "number" }, "tool_choice": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "tools": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.Tool" } }, "top_p": { "type": "number" } } }, "oci-portal_internal_aiwire.ChatResponse": { "type": "object", "properties": { "choices": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.Choice" } }, "created": { "type": "integer" }, "id": { "type": "string" }, "model": { "type": "string" }, "object": { "type": "string" }, "usage": { "$ref": "#/definitions/oci-portal_internal_aiwire.Usage" } } }, "oci-portal_internal_aiwire.Choice": { "type": "object", "properties": { "finish_reason": { "type": "string" }, "index": { "type": "integer" }, "message": { "$ref": "#/definitions/oci-portal_internal_aiwire.ChatMessage" } } }, "oci-portal_internal_aiwire.EmbedUsage": { "type": "object", "properties": { "prompt_tokens": { "type": "integer" }, "total_tokens": { "type": "integer" } } }, "oci-portal_internal_aiwire.Embedding": { "type": "object", "properties": { "embedding": { "type": "array", "items": { "type": "number" } }, "index": { "type": "integer" }, "object": { "type": "string" } } }, "oci-portal_internal_aiwire.EmbeddingsRequest": { "type": "object", "properties": { "dimensions": { "type": "integer" }, "encoding_format": { "type": "string" }, "input": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "model": { "type": "string" }, "user": { "type": "string" } } }, "oci-portal_internal_aiwire.EmbeddingsResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.Embedding" } }, "model": { "type": "string" }, "object": { "type": "string" }, "usage": { "$ref": "#/definitions/oci-portal_internal_aiwire.EmbedUsage" } } }, "oci-portal_internal_aiwire.FunctionCall": { "type": "object", "properties": { "arguments": { "type": "string" }, "name": { "type": "string" } } }, "oci-portal_internal_aiwire.FunctionDef": { "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "parameters": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" } } }, "oci-portal_internal_aiwire.MessagesRequest": { "type": "object", "properties": { "max_tokens": { "type": "integer" }, "messages": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthMessage" } }, "metadata": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "model": { "type": "string" }, "output_config": { "description": "OutputConfig 是 Anthropic 官方输出控制(effort 等);网关映射 effort 到 OCI reasoningEffort。", "allOf": [ { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthOutputConfig" } ] }, "stop_sequences": { "type": "array", "items": { "type": "string" } }, "stream": { "type": "boolean" }, "system": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "temperature": { "type": "number" }, "thinking": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "tool_choice": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "tools": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthTool" } }, "top_k": { "type": "integer" }, "top_p": { "type": "number" } } }, "oci-portal_internal_aiwire.MessagesResponse": { "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthBlock" } }, "id": { "type": "string" }, "model": { "type": "string" }, "role": { "type": "string" }, "stop_reason": { "type": "string" }, "stop_sequence": { "type": "string" }, "type": { "type": "string" }, "usage": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnthUsage" } } }, "oci-portal_internal_aiwire.Model": { "type": "object", "properties": { "created": { "type": "integer" }, "id": { "type": "string" }, "object": { "type": "string" }, "owned_by": { "type": "string" } } }, "oci-portal_internal_aiwire.ModelList": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.Model" } }, "object": { "type": "string" } } }, "oci-portal_internal_aiwire.ModerationPii": { "type": "object", "properties": { "label": { "type": "string" }, "length": { "type": "integer" }, "offset": { "type": "integer" }, "score": { "type": "number" }, "text": { "type": "string" } } }, "oci-portal_internal_aiwire.ModerationResult": { "type": "object", "properties": { "categories": { "type": "object", "additionalProperties": { "type": "boolean" } }, "category_scores": { "type": "object", "additionalProperties": { "type": "number", "format": "float64" } }, "flagged": { "type": "boolean" }, "pii": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.ModerationPii" } } } }, "oci-portal_internal_aiwire.ModerationsRequest": { "type": "object", "properties": { "input": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "model": { "type": "string" } } }, "oci-portal_internal_aiwire.ModerationsResponse": { "type": "object", "properties": { "id": { "type": "string" }, "model": { "type": "string" }, "results": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.ModerationResult" } } } }, "oci-portal_internal_aiwire.PromptTokensDetails": { "type": "object", "properties": { "cached_tokens": { "type": "integer" } } }, "oci-portal_internal_aiwire.RerankDocument": { "type": "object", "properties": { "text": { "type": "string" } } }, "oci-portal_internal_aiwire.RerankRequest": { "type": "object", "properties": { "documents": { "type": "array", "items": { "type": "string" } }, "model": { "type": "string" }, "query": { "type": "string" }, "return_documents": { "type": "boolean" }, "top_n": { "type": "integer" } } }, "oci-portal_internal_aiwire.RerankResponse": { "type": "object", "properties": { "model": { "type": "string" }, "results": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.RerankResult" } } } }, "oci-portal_internal_aiwire.RerankResult": { "type": "object", "properties": { "document": { "$ref": "#/definitions/oci-portal_internal_aiwire.RerankDocument" }, "index": { "type": "integer" }, "relevance_score": { "type": "number" } } }, "oci-portal_internal_aiwire.RespError": { "type": "object", "properties": { "code": { "type": "string" }, "message": { "type": "string" } } }, "oci-portal_internal_aiwire.RespInDetails": { "type": "object", "properties": { "cached_tokens": { "type": "integer" } } }, "oci-portal_internal_aiwire.RespOutDetails": { "type": "object", "properties": { "reasoning_tokens": { "type": "integer" } } }, "oci-portal_internal_aiwire.RespReasoning": { "type": "object", "properties": { "effort": { "type": "string" } } }, "oci-portal_internal_aiwire.RespRequest": { "type": "object", "properties": { "background": { "type": "boolean" }, "conversation": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "input": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "instructions": { "type": "string" }, "max_output_tokens": { "type": "integer" }, "model": { "type": "string" }, "parallel_tool_calls": { "type": "boolean" }, "previous_response_id": { "type": "string" }, "reasoning": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespReasoning" }, "store": { "type": "boolean" }, "stream": { "type": "boolean" }, "temperature": { "type": "number" }, "text": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespText" }, "tool_choice": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "tools": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespTool" } }, "top_p": { "type": "number" } } }, "oci-portal_internal_aiwire.RespResponse": { "type": "object", "properties": { "created_at": { "type": "integer" }, "error": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespError" }, "id": { "type": "string" }, "model": { "type": "string" }, "object": { "type": "string" }, "output": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "status": { "type": "string" }, "usage": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespUsage" } } }, "oci-portal_internal_aiwire.RespText": { "type": "object", "properties": { "format": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespTextFormat" } } }, "oci-portal_internal_aiwire.RespTextFormat": { "type": "object", "properties": { "name": { "type": "string" }, "schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "strict": { "type": "boolean" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.RespTool": { "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "parameters": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "strict": { "type": "boolean" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.RespUsage": { "type": "object", "properties": { "input_tokens": { "type": "integer" }, "input_tokens_details": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespInDetails" }, "output_tokens": { "type": "integer" }, "output_tokens_details": { "$ref": "#/definitions/oci-portal_internal_aiwire.RespOutDetails" }, "total_tokens": { "type": "integer" } } }, "oci-portal_internal_aiwire.ResponseFormat": { "type": "object", "properties": { "json_schema": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.SpeechRequest": { "type": "object", "properties": { "input": { "type": "string" }, "language": { "type": "string" }, "model": { "type": "string" }, "response_format": { "type": "string" }, "voice": { "type": "string" } } }, "oci-portal_internal_aiwire.StreamOptions": { "type": "object", "properties": { "include_usage": { "type": "boolean" } } }, "oci-portal_internal_aiwire.Tool": { "type": "object", "properties": { "function": { "$ref": "#/definitions/oci-portal_internal_aiwire.FunctionDef" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.ToolCall": { "type": "object", "properties": { "function": { "$ref": "#/definitions/oci-portal_internal_aiwire.FunctionCall" }, "id": { "type": "string" }, "type": { "type": "string" } } }, "oci-portal_internal_aiwire.TtsOutputFormat": { "type": "object", "properties": { "bit_rate": { "type": "integer" }, "codec": { "type": "string" }, "sample_rate": { "type": "integer" } } }, "oci-portal_internal_aiwire.TtsRequest": { "type": "object", "properties": { "language": { "type": "string" }, "model": { "type": "string" }, "output_format": { "$ref": "#/definitions/oci-portal_internal_aiwire.TtsOutputFormat" }, "speed": { "type": "number" }, "text": { "type": "string" }, "voice_id": { "type": "string" } } }, "oci-portal_internal_aiwire.Usage": { "type": "object", "properties": { "completion_tokens": { "type": "integer" }, "prompt_tokens": { "type": "integer" }, "prompt_tokens_details": { "description": "PromptTokensDetails 携带缓存命中细分;OCI 为隐式 prompt 缓存,只有读取计数", "allOf": [ { "$ref": "#/definitions/oci-portal_internal_aiwire.PromptTokensDetails" } ] }, "total_tokens": { "type": "integer" } } }, "oci-portal_internal_model.AiCallLog": { "type": "object", "properties": { "cachedTokens": { "description": "CachedTokens 是输入中缓存命中(读取)的部分;OCI 隐式缓存无写入计数", "type": "integer" }, "channelId": { "type": "integer" }, "channelName": { "type": "string" }, "clientIp": { "description": "ClientIP 是网关调用方来源 IP(尊重「真实 IP 头」安全设置,与系统日志同源)", "type": "string" }, "completionTokens": { "type": "integer" }, "createdAt": { "type": "string" }, "endpoint": { "description": "openai / anthropic", "type": "string" }, "errMsg": { "type": "string" }, "id": { "type": "integer" }, "keyId": { "type": "integer" }, "keyName": { "type": "string" }, "latencyMs": { "type": "integer" }, "model": { "type": "string" }, "promptTokens": { "type": "integer" }, "retries": { "type": "integer" }, "status": { "type": "integer" }, "stream": { "type": "boolean" }, "totalTokens": { "type": "integer" } } }, "oci-portal_internal_model.AiChannel": { "type": "object", "properties": { "createdAt": { "type": "string" }, "disabledUntil": { "type": "string" }, "enabled": { "type": "boolean" }, "failCount": { "description": "FailCount 连续失败计数;达阈值后 DisabledUntil 指数退避熔断,成功/探测通过复位", "type": "integer" }, "group": { "type": "string" }, "id": { "type": "integer" }, "lastProbeAt": { "type": "string" }, "modelCount": { "description": "ModelCount 是渠道模型缓存计数,列表查询回填,不落库", "type": "integer" }, "name": { "type": "string" }, "ociConfigId": { "type": "integer" }, "priority": { "type": "integer" }, "probeError": { "type": "string" }, "probeModel": { "description": "ProbeModel 是用户测试通过后固定的探测验证模型名;探测时置于候选首位", "type": "string" }, "probeStatus": { "description": "ok / no_service / no_quota / error", "type": "string" }, "region": { "type": "string" }, "updatedAt": { "type": "string" }, "weight": { "type": "integer" } } }, "oci-portal_internal_model.AiContentLog": { "type": "object", "properties": { "callLogId": { "description": "CallLogID 关联同次调用的 AiCallLog,调用日志详情据此反查正文", "type": "integer" }, "createdAt": { "type": "string" }, "endpoint": { "type": "string" }, "id": { "type": "integer" }, "keyId": { "type": "integer" }, "keyName": { "type": "string" }, "model": { "type": "string" }, "requestBody": { "description": "RequestBody / ResponseBody 是截断后的正文 JSON;\n64KB 截断恰在 MySQL TEXT 上限(65535B)边界,size 上探一档 → MEDIUMTEXT", "type": "string" }, "responseBody": { "type": "string" }, "stream": { "type": "boolean" } } }, "oci-portal_internal_model.AiKey": { "type": "object", "properties": { "contentLogUntil": { "description": "ContentLogUntil 是内容日志开启截止时间;nil = 永关(默认,红线),\n开启必须限时,到期自动停写", "type": "string" }, "createdAt": { "type": "string" }, "enabled": { "type": "boolean" }, "group": { "type": "string" }, "id": { "type": "integer" }, "lastUsedAt": { "type": "string" }, "models": { "description": "Models 是模型白名单(精确匹配模型名);空 = 不限,非空时网关仅放行列表内模型", "type": "array", "items": { "type": "string" } }, "name": { "type": "string" }, "tail": { "type": "string" } } }, "oci-portal_internal_model.AiModelBlacklist": { "type": "object", "properties": { "createdAt": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" } } }, "oci-portal_internal_model.AiModelCache": { "type": "object", "properties": { "capability": { "type": "string" }, "channelId": { "type": "integer" }, "deprecatedAt": { "description": "DeprecatedAt 是 OCI 宣布的模型弃用时间;nil 表示未宣布。\n弃用后仍可调用,直到 RetiredAt(按需推理退役,同步层已剔除过期项)。", "type": "string" }, "modelOcid": { "type": "string" }, "name": { "type": "string" }, "retiredAt": { "type": "string" }, "syncedAt": { "type": "string" }, "vendor": { "type": "string" } } }, "oci-portal_internal_model.LogEvent": { "type": "object", "properties": { "eventTime": { "type": "string" }, "eventType": { "description": "异步解析回填,如 com.oraclecloud.ComputeApi.TerminateInstance", "type": "string" }, "id": { "type": "integer" }, "messageId": { "description": "幂等键(X-OCI-NS-MessageId)", "type": "string" }, "ociConfigId": { "description": "经 secret 反查归属租户", "type": "integer" }, "payload": { "description": "防御上限 256KB 超 MySQL TEXT(64KB),size 上探一档 → MEDIUMTEXT;PG/SQLite 仍为 text", "type": "string" }, "processed": { "type": "boolean" }, "receivedAt": { "type": "string" }, "source": { "type": "string" }, "sourceIp": { "description": "异步解析回填,Audit 事件的发起方 IP", "type": "string" }, "truncated": { "type": "boolean" } } }, "oci-portal_internal_model.OciConfig": { "type": "object", "properties": { "accountType": { "type": "string" }, "alias": { "type": "string" }, "aliveStatus": { "type": "string" }, "createdAt": { "type": "string" }, "fingerprint": { "type": "string" }, "group": { "description": "Group 是面板内的自定义分组标签,空串表示未分组;\n列名避开 SQL 保留字 GROUP", "type": "string" }, "homeRegionKey": { "type": "string" }, "id": { "type": "integer" }, "lastError": { "type": "string" }, "lastVerifiedAt": { "type": "string" }, "multiCompartment": { "type": "boolean" }, "multiRegion": { "description": "多区域 / 多区间支持:开启后订阅区域与 compartment 列表入库缓存,\n供筛选器免实时调 OCI;未开启的租户筛选器锁定主区域 / 根区间。", "type": "boolean" }, "paymentModel": { "type": "string" }, "promotionAmount": { "type": "number" }, "promotionExpires": { "type": "string" }, "promotionStatus": { "type": "string" }, "proxyId": { "description": "ProxyID 关联出站代理,nil 表示直连;该租户全部 SDK 调用经此代理", "type": "integer" }, "region": { "type": "string" }, "subscriptionId": { "type": "string" }, "subscriptionTier": { "type": "string" }, "tenancyName": { "type": "string" }, "tenancyOcid": { "type": "string" }, "updatedAt": { "type": "string" }, "userOcid": { "type": "string" } } }, "oci-portal_internal_model.SystemLog": { "type": "object", "properties": { "clientIp": { "type": "string" }, "createdAt": { "type": "string" }, "durationMs": { "type": "integer" }, "errMsg": { "description": "ErrMsg 仅失败请求(\u003e=400)存响应的 error 文案,便于免翻服务端日志定位原因", "type": "string" }, "id": { "type": "integer" }, "method": { "type": "string" }, "path": { "type": "string" }, "status": { "type": "integer" }, "userAgent": { "type": "string" }, "username": { "type": "string" } } }, "oci-portal_internal_model.Task": { "type": "object", "properties": { "createdAt": { "type": "string" }, "cronExpr": { "type": "string" }, "id": { "type": "integer" }, "lastError": { "type": "string" }, "lastRunAt": { "type": "string" }, "name": { "type": "string" }, "payload": { "type": "string" }, "runCount": { "type": "integer" }, "status": { "type": "string" }, "type": { "type": "string" }, "updatedAt": { "type": "string" } } }, "oci-portal_internal_model.TaskLog": { "type": "object", "properties": { "createdAt": { "type": "string" }, "durationMs": { "type": "integer" }, "id": { "type": "integer" }, "message": { "type": "string" }, "success": { "type": "boolean" }, "taskId": { "type": "integer" } } }, "oci-portal_internal_model.UserIdentity": { "type": "object", "properties": { "createdAt": { "type": "string" }, "display": { "description": "展示名:邮箱 / GitHub login", "type": "string" }, "id": { "type": "integer" }, "provider": { "type": "string" } } }, "oci-portal_internal_oci.AuditEvent": { "type": "object", "properties": { "compartmentName": { "type": "string" }, "eventId": { "type": "string" }, "eventName": { "type": "string" }, "eventTime": { "type": "string" }, "ipAddress": { "type": "string" }, "principalName": { "type": "string" }, "raw": { "$ref": "#/definitions/oci-portal_internal_aiwire.AnyJSON" }, "requestAction": { "type": "string" }, "requestPath": { "type": "string" }, "resourceName": { "type": "string" }, "source": { "type": "string" }, "status": { "type": "string" } } }, "oci-portal_internal_oci.BlockVolume": { "type": "object", "properties": { "availabilityDomain": { "type": "string" }, "displayName": { "type": "string" }, "id": { "type": "string" }, "lifecycleState": { "type": "string" }, "sizeInGBs": { "type": "integer" }, "timeCreated": { "type": "string" }, "vpusPerGB": { "type": "integer" } } }, "oci-portal_internal_oci.BootVolume": { "type": "object", "properties": { "attachedInstanceId": { "type": "string" }, "attachedInstanceName": { "type": "string" }, "availabilityDomain": { "type": "string" }, "compartmentId": { "type": "string" }, "displayName": { "type": "string" }, "id": { "type": "string" }, "imageId": { "type": "string" }, "imageName": { "type": "string" }, "lifecycleState": { "type": "string" }, "sizeInGBs": { "type": "integer" }, "timeCreated": { "type": "string" }, "vpusPerGB": { "type": "integer" } } }, "oci-portal_internal_oci.BootVolumeAttachment": { "type": "object", "properties": { "availabilityDomain": { "type": "string" }, "bootVolumeId": { "type": "string" }, "displayName": { "type": "string" }, "id": { "type": "string" }, "instanceId": { "type": "string" }, "lifecycleState": { "type": "string" } } }, "oci-portal_internal_oci.Compartment": { "type": "object", "properties": { "description": { "type": "string" }, "id": { "type": "string" }, "lifecycleState": { "type": "string" }, "name": { "type": "string" }, "parentId": { "type": "string" }, "timeCreated": { "type": "string" } } }, "oci-portal_internal_oci.ComputeShape": { "type": "object", "properties": { "billingType": { "description": "ALWAYS_FREE / LIMITED_FREE / PAID", "type": "string" }, "gpus": { "type": "integer" }, "isFlexible": { "type": "boolean" }, "memoryInGBs": { "type": "number" }, "memoryMaxGBs": { "type": "number" }, "memoryMinGBs": { "type": "number" }, "name": { "type": "string" }, "ocpus": { "type": "number" }, "ocpusMax": { "type": "number" }, "ocpusMin": { "type": "number" }, "processorDescription": { "type": "string" } } }, "oci-portal_internal_oci.ConsoleConnection": { "type": "object", "properties": { "connectionString": { "description": "串口控制台 SSH 命令", "type": "string" }, "id": { "type": "string" }, "instanceId": { "type": "string" }, "lifecycleState": { "type": "string" }, "vncConnectionString": { "description": "VNC over SSH 隧道命令", "type": "string" } } }, "oci-portal_internal_oci.CostItem": { "type": "object", "properties": { "computedAmount": { "type": "number" }, "computedQuantity": { "type": "number" }, "currency": { "type": "string" }, "groupValue": { "type": "string" }, "timeStart": { "type": "string" }, "unit": { "type": "string" } } }, "oci-portal_internal_oci.IPv6Step": { "type": "object", "properties": { "detail": { "type": "string" }, "status": { "description": "done / skipped / failed", "type": "string" }, "step": { "type": "string" } } }, "oci-portal_internal_oci.IdentityDomain": { "type": "object", "properties": { "displayName": { "type": "string" }, "homeRegion": { "type": "string" }, "id": { "type": "string" }, "licenseType": { "type": "string" }, "type": { "type": "string" } } }, "oci-portal_internal_oci.IdentityProviderInfo": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "id": { "type": "string" }, "jitEnabled": { "type": "boolean" }, "name": { "type": "string" }, "partnerProviderId": { "type": "string" }, "timeCreated": { "type": "string" }, "type": { "type": "string" } } }, "oci-portal_internal_oci.IdentitySettingInfo": { "type": "object", "properties": { "id": { "type": "string" }, "primaryEmailRequired": { "description": "用户需要提供主电子邮件地址:开启后创建用户 / JIT 预配必须带邮箱", "type": "boolean" } } }, "oci-portal_internal_oci.Image": { "type": "object", "properties": { "displayName": { "type": "string" }, "id": { "type": "string" }, "operatingSystem": { "type": "string" }, "operatingSystemVersion": { "type": "string" }, "sizeInMBs": { "type": "integer" }, "timeCreated": { "type": "string" } } }, "oci-portal_internal_oci.Instance": { "type": "object", "properties": { "availabilityDomain": { "type": "string" }, "compartmentId": { "type": "string" }, "definedTags": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": {} } }, "displayName": { "type": "string" }, "freeformTags": { "type": "object", "additionalProperties": { "type": "string" } }, "id": { "type": "string" }, "imageId": { "type": "string" }, "ipv6Addresses": { "type": "array", "items": { "type": "string" } }, "lifecycleState": { "type": "string" }, "memoryInGBs": { "type": "number" }, "ocpus": { "type": "number" }, "privateIp": { "type": "string" }, "publicIp": { "type": "string" }, "region": { "type": "string" }, "shape": { "type": "string" }, "subnetId": { "type": "string" }, "timeCreated": { "type": "string" } } }, "oci-portal_internal_oci.InstanceTraffic": { "type": "object", "properties": { "inboundBytes": { "type": "number" }, "instanceId": { "type": "string" }, "outboundBytes": { "type": "number" }, "vnics": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.VnicTraffic" } } } }, "oci-portal_internal_oci.LimitService": { "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" } } }, "oci-portal_internal_oci.LimitValue": { "type": "object", "properties": { "availabilityDomain": { "type": "string" }, "available": { "type": "integer" }, "name": { "type": "string" }, "scopeType": { "type": "string" }, "used": { "type": "integer" }, "value": { "type": "integer" } } }, "oci-portal_internal_oci.NotificationRecipients": { "type": "object", "properties": { "recipients": { "type": "array", "items": { "type": "string" } }, "testModeEnabled": { "type": "boolean" } } }, "oci-portal_internal_oci.PasswordPolicyInfo": { "type": "object", "properties": { "id": { "type": "string" }, "minLength": { "type": "integer" }, "name": { "type": "string" }, "numPasswordsInHistory": { "type": "integer" }, "passwordExpiresAfter": { "type": "integer" }, "passwordStrength": { "type": "string" }, "priority": { "type": "integer" } } }, "oci-portal_internal_oci.PromotionInfo": { "type": "object", "properties": { "amount": { "type": "number" }, "currencyUnit": { "type": "string" }, "duration": { "type": "integer" }, "durationUnit": { "type": "string" }, "isIntentToPay": { "type": "boolean" }, "status": { "type": "string" }, "timeExpired": { "type": "string" }, "timeStarted": { "type": "string" } } }, "oci-portal_internal_oci.RegionInfo": { "type": "object", "properties": { "alias": { "type": "string" }, "key": { "type": "string" }, "name": { "type": "string" } } }, "oci-portal_internal_oci.RelayResource": { "type": "object", "properties": { "id": { "type": "string" }, "state": { "type": "string" } } }, "oci-portal_internal_oci.SecurityList": { "type": "object", "properties": { "displayName": { "type": "string" }, "egressRules": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityRule" } }, "id": { "type": "string" }, "ingressRules": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.SecurityRule" } }, "lifecycleState": { "type": "string" }, "timeCreated": { "type": "string" }, "vcnId": { "type": "string" } } }, "oci-portal_internal_oci.SecurityRule": { "type": "object", "properties": { "description": { "type": "string" }, "destination": { "type": "string" }, "icmpCode": { "type": "integer" }, "icmpType": { "type": "integer" }, "isStateless": { "type": "boolean" }, "portMax": { "type": "integer" }, "portMin": { "type": "integer" }, "protocol": { "description": "all、6(TCP)、17(UDP)、1(ICMP)、58(ICMPv6)", "type": "string" }, "source": { "type": "string" } } }, "oci-portal_internal_oci.SignOnRuleInfo": { "type": "object", "properties": { "authenticationFactor": { "type": "string" }, "builtIn": { "type": "boolean" }, "conditionAttribute": { "type": "string" }, "conditionValue": { "type": "string" }, "id": { "type": "string" }, "name": { "type": "string" }, "sequence": { "type": "integer" } } }, "oci-portal_internal_oci.Subnet": { "type": "object", "properties": { "availabilityDomain": { "type": "string" }, "cidrBlock": { "type": "string" }, "displayName": { "type": "string" }, "dnsLabel": { "type": "string" }, "id": { "type": "string" }, "ipv6CidrBlock": { "type": "string" }, "lifecycleState": { "type": "string" }, "prohibitPublicIp": { "type": "boolean" }, "routeTableId": { "type": "string" }, "timeCreated": { "type": "string" }, "vcnId": { "type": "string" } } }, "oci-portal_internal_oci.SubscriptionDetail": { "type": "object", "properties": { "classicSubscriptionId": { "type": "string" }, "cloudAmountCurrency": { "type": "string" }, "csiNumber": { "type": "string" }, "customerCountryCode": { "type": "string" }, "endDate": { "type": "string" }, "id": { "type": "string" }, "isGovernmentSubscription": { "type": "boolean" }, "lifecycleState": { "type": "string" }, "paymentModel": { "type": "string" }, "programType": { "type": "string" }, "promotions": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.PromotionInfo" } }, "regionAssignment": { "type": "string" }, "serviceName": { "type": "string" }, "startDate": { "type": "string" }, "subscriptionTier": { "type": "string" }, "timeCreated": { "type": "string" }, "timeUpdated": { "type": "string" } } }, "oci-portal_internal_oci.SubscriptionInfo": { "type": "object", "properties": { "id": { "type": "string" }, "serviceName": { "type": "string" }, "timeCreated": { "type": "string" }, "timeUpdated": { "type": "string" } } }, "oci-portal_internal_oci.TenantUser": { "type": "object", "properties": { "description": { "type": "string" }, "email": { "type": "string" }, "emailVerified": { "type": "boolean" }, "id": { "type": "string" }, "isCurrentUser": { "type": "boolean" }, "lastLoginTime": { "type": "string" }, "lifecycleState": { "type": "string" }, "mfaActivated": { "type": "boolean" }, "name": { "type": "string" }, "timeCreated": { "type": "string" } } }, "oci-portal_internal_oci.TenantUserDetail": { "type": "object", "properties": { "familyName": { "type": "string" }, "givenName": { "type": "string" }, "inAdminGroup": { "type": "boolean" }, "inDomain": { "type": "boolean" }, "isDomainAdmin": { "type": "boolean" } } }, "oci-portal_internal_oci.TrafficPoint": { "type": "object", "properties": { "bytes": { "type": "number" }, "timestamp": { "type": "string" } } }, "oci-portal_internal_oci.VCN": { "type": "object", "properties": { "cidrBlocks": { "type": "array", "items": { "type": "string" } }, "compartmentId": { "type": "string" }, "defaultRouteTableId": { "type": "string" }, "defaultSecurityListId": { "type": "string" }, "displayName": { "type": "string" }, "dnsLabel": { "type": "string" }, "id": { "type": "string" }, "ipv6CidrBlocks": { "type": "array", "items": { "type": "string" } }, "lifecycleState": { "type": "string" }, "timeCreated": { "type": "string" } } }, "oci-portal_internal_oci.Vnic": { "type": "object", "properties": { "attachmentId": { "type": "string" }, "displayName": { "type": "string" }, "ipv6Addresses": { "type": "array", "items": { "type": "string" } }, "isPrimary": { "type": "boolean" }, "lifecycleState": { "type": "string" }, "privateIp": { "type": "string" }, "publicIp": { "type": "string" }, "subnetId": { "type": "string" }, "subnetName": { "type": "string" }, "timeCreated": { "type": "string" }, "vnicId": { "type": "string" } } }, "oci-portal_internal_oci.VnicTraffic": { "type": "object", "properties": { "inbound": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.TrafficPoint" } }, "inboundBytes": { "type": "number" }, "outbound": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.TrafficPoint" } }, "outboundBytes": { "type": "number" }, "vnicId": { "type": "string" } } }, "oci-portal_internal_oci.VolumeAttachment": { "type": "object", "properties": { "availabilityDomain": { "type": "string" }, "device": { "type": "string" }, "displayName": { "type": "string" }, "id": { "type": "string" }, "instanceId": { "type": "string" }, "isReadOnly": { "type": "boolean" }, "lifecycleState": { "type": "string" }, "volumeId": { "type": "string" }, "volumeName": { "description": "卷本身的名称(attachment 名是自动生成的)", "type": "string" } } }, "oci-portal_internal_service.AggregatedModel": { "type": "object", "properties": { "capability": { "type": "string" }, "name": { "type": "string" } } }, "oci-portal_internal_service.AuditEventsView": { "type": "object", "properties": { "cursor": { "type": "string" }, "exhausted": { "type": "boolean" }, "items": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_oci.AuditEvent" } }, "scannedThrough": { "type": "string" } } }, "oci-portal_internal_service.Changes": { "type": "object", "additionalProperties": { "type": "array", "items": { "type": "string" } } }, "oci-portal_internal_service.ChannelInput": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "group": { "type": "string" }, "name": { "type": "string" }, "ociConfigId": { "type": "integer" }, "priority": { "type": "integer" }, "region": { "type": "string" }, "weight": { "type": "integer" } } }, "oci-portal_internal_service.ConfigSummary": { "type": "object", "properties": { "accountType": { "type": "string" }, "alias": { "type": "string" }, "aliveStatus": { "type": "string" }, "createdAt": { "type": "string" }, "group": { "type": "string" }, "id": { "type": "integer" }, "lastError": { "type": "string" }, "lastVerifiedAt": { "type": "string" }, "multiCompartment": { "type": "boolean" }, "multiRegion": { "type": "boolean" }, "proxyId": { "type": "integer" }, "proxyName": { "description": "ProxyName 由 List 按关联填充,供表格代理列 hover 展示", "type": "string" }, "region": { "type": "string" }, "tenancyName": { "type": "string" }, "tenancyOcid": { "type": "string" } } }, "oci-portal_internal_service.ImportFail": { "type": "object", "properties": { "line": { "type": "string" }, "lineNo": { "type": "integer" }, "reason": { "type": "string" } } }, "oci-portal_internal_service.ImportResult": { "type": "object", "properties": { "created": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.ProxyView" } }, "failed": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.ImportFail" } } } }, "oci-portal_internal_service.LogWebhookInfo": { "type": "object", "properties": { "createdAt": { "type": "string" }, "path": { "type": "string" }, "secret": { "type": "string" } } }, "oci-portal_internal_service.NotifyChannelView": { "type": "object", "properties": { "bodyTemplate": { "type": "string" }, "enabled": { "type": "boolean" }, "from": { "type": "string" }, "host": { "description": "smtp", "type": "string" }, "port": { "type": "integer" }, "secretSet": { "description": "密文字段状态(ntfy token / bark device key / smtp password)", "type": "boolean" }, "secretTail": { "type": "string" }, "server": { "description": "ntfy / bark 共用 Server", "type": "string" }, "to": { "type": "string" }, "topic": { "type": "string" }, "type": { "type": "string" }, "url": { "description": "webhook", "type": "string" }, "username": { "type": "string" } } }, "oci-portal_internal_service.NotifyEventsView": { "type": "object", "properties": { "logEventIdentity": { "type": "boolean" }, "logEventInstance": { "type": "boolean" }, "logEventLogin": { "type": "boolean" }, "logEventPolicy": { "type": "boolean" }, "logEventRegion": { "type": "boolean" }, "loginLock": { "type": "boolean" }, "modelDeprecated": { "type": "boolean" }, "snatchSuccess": { "type": "boolean" }, "taskFail": { "type": "boolean" }, "taskRecover": { "type": "boolean" }, "taskStop": { "type": "boolean" }, "tenantDead": { "type": "boolean" } } }, "oci-portal_internal_service.NotifyTemplateView": { "type": "object", "properties": { "defaultTemplate": { "type": "string" }, "kind": { "type": "string" }, "label": { "type": "string" }, "template": { "description": "Template 是自定义模板;空串表示未自定义(按默认发送)", "type": "string" }, "vars": { "type": "array", "items": { "type": "string" } } } }, "oci-portal_internal_service.OAuthProvidersView": { "type": "object", "properties": { "githubClientId": { "type": "string" }, "githubDisabled": { "type": "boolean" }, "githubDisplayName": { "type": "string" }, "githubSecretSet": { "type": "boolean" }, "oidcClientId": { "type": "string" }, "oidcDisabled": { "type": "boolean" }, "oidcDisplayName": { "type": "string" }, "oidcIssuer": { "type": "string" }, "oidcSecretSet": { "type": "boolean" } } }, "oci-portal_internal_service.Overview": { "type": "object", "properties": { "check": { "$ref": "#/definitions/oci-portal_internal_service.OverviewCheck" }, "cost": { "$ref": "#/definitions/oci-portal_internal_service.OverviewCost" }, "tasks": { "$ref": "#/definitions/oci-portal_internal_service.OverviewTasks" }, "tenants": { "$ref": "#/definitions/oci-portal_internal_service.OverviewTenants" } } }, "oci-portal_internal_service.OverviewCheck": { "type": "object", "properties": { "coveredConfigs": { "type": "integer" }, "hasActiveTask": { "type": "boolean" }, "instanceCount": { "type": "integer" }, "lastCheckedAt": { "type": "string" }, "totalConfigs": { "type": "integer" } } }, "oci-portal_internal_service.OverviewCost": { "type": "object", "properties": { "coveredConfigs": { "type": "integer" }, "currency": { "type": "string" }, "days": { "type": "array", "items": { "$ref": "#/definitions/oci-portal_internal_service.OverviewCostDay" } }, "hasActiveTask": { "type": "boolean" }, "total": { "type": "number" } } }, "oci-portal_internal_service.OverviewCostDay": { "type": "object", "properties": { "amount": { "type": "number" }, "day": { "type": "string" } } }, "oci-portal_internal_service.OverviewTasks": { "type": "object", "properties": { "active": { "type": "integer" }, "cost": { "type": "integer" }, "healthCheck": { "type": "integer" }, "snatch": { "type": "integer" }, "total": { "type": "integer" } } }, "oci-portal_internal_service.OverviewTenants": { "type": "object", "properties": { "alive": { "type": "integer" }, "byType": { "type": "object", "additionalProperties": { "type": "integer" } }, "dead": { "type": "integer" }, "total": { "type": "integer" } } }, "oci-portal_internal_service.ProviderInfo": { "type": "object", "properties": { "displayName": { "type": "string" }, "provider": { "type": "string" } } }, "oci-portal_internal_service.ProxyInput": { "type": "object", "required": [ "host", "port", "type" ], "properties": { "host": { "type": "string" }, "name": { "type": "string" }, "password": { "type": "string" }, "port": { "type": "integer" }, "type": { "type": "string" }, "username": { "type": "string" } } }, "oci-portal_internal_service.ProxyView": { "type": "object", "properties": { "city": { "type": "string" }, "country": { "description": "Country / City 为出口实测地区;GeoAt 空串表示尚未探测(前端显示「检测中」)", "type": "string" }, "createdAt": { "type": "string" }, "geoAt": { "type": "string" }, "host": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" }, "passwordSet": { "type": "boolean" }, "port": { "type": "integer" }, "type": { "type": "string" }, "usedBy": { "description": "UsedBy 为关联此代理的租户数,前端据此提示删除约束", "type": "integer" }, "username": { "type": "string" } } }, "oci-portal_internal_service.RegionSubscriptionView": { "type": "object", "properties": { "alias": { "type": "string" }, "isHomeRegion": { "type": "boolean" }, "key": { "type": "string" }, "name": { "type": "string" }, "status": { "type": "string" } } }, "oci-portal_internal_service.RelayView": { "type": "object", "properties": { "connector": { "$ref": "#/definitions/oci-portal_internal_oci.RelayResource" }, "endpoint": { "type": "string" }, "events": { "type": "array", "items": { "type": "string" } }, "policy": { "$ref": "#/definitions/oci-portal_internal_oci.RelayResource" }, "ready": { "type": "boolean" }, "subscription": { "$ref": "#/definitions/oci-portal_internal_oci.RelayResource" }, "topic": { "$ref": "#/definitions/oci-portal_internal_oci.RelayResource" }, "webhook": { "$ref": "#/definitions/oci-portal_internal_service.LogWebhookInfo" } } }, "oci-portal_internal_service.SecuritySettings": { "type": "object", "properties": { "appUrl": { "description": "面板公网基址;优先于 PUBLIC_URL 环境变量,回传链路与 OAuth 回调用", "type": "string" }, "ipRateBurst": { "type": "integer" }, "ipRateRps": { "description": "全局 IP 限速令牌桶", "type": "integer" }, "loginFailLimit": { "description": "登录守卫:LockMinutes 分钟窗口内失败 FailLimit 次锁 LockMinutes 分钟", "type": "integer" }, "loginLockMinutes": { "type": "integer" }, "realIpHeader": { "description": "真实IP请求头:空 = 直连(RemoteAddr);反代后必须选择与反代匹配的头", "type": "string" } } }, "oci-portal_internal_service.TaskSettingsView": { "type": "object", "properties": { "snatchAuthFailLimit": { "type": "integer" } } }, "oci-portal_internal_service.TelegramView": { "type": "object", "properties": { "chatId": { "type": "string" }, "enabled": { "type": "boolean" }, "tokenSet": { "type": "boolean" }, "tokenTail": { "type": "string" } } }, "oci-portal_internal_service.UpdateCredentialsInput": { "type": "object", "required": [ "currentPassword" ], "properties": { "currentPassword": { "type": "string" }, "newPassword": { "type": "string" }, "newUsername": { "type": "string" } } }, "oci-portal_internal_service.UpdateOAuthInput": { "type": "object", "properties": { "githubClientId": { "type": "string" }, "githubClientSecret": { "type": "string" }, "githubDisabled": { "type": "boolean" }, "githubDisplayName": { "type": "string" }, "oidcClientId": { "type": "string" }, "oidcClientSecret": { "type": "string" }, "oidcDisabled": { "type": "boolean" }, "oidcDisplayName": { "type": "string" }, "oidcIssuer": { "type": "string" } } } }, "securityDefinitions": { "BearerAuth": { "description": "登录接口返回的 JWT,格式: Bearer \u003ctoken\u003e", "type": "apiKey", "name": "Authorization", "in": "header" } } }` // SwaggerInfo holds exported Swagger Info so clients can modify it var SwaggerInfo = &swag.Spec{ Version: "0.0.1", Host: "", BasePath: "/", Schemes: []string{}, Title: "OCI Portal API", Description: "自托管 OCI 多租户管理面板 API。业务接口用 JWT(Bearer);AI 网关端点(/ai/v1/*)用独立网关密钥(Authorization: Bearer 或 x-api-key)。", InfoInstanceName: "swagger", SwaggerTemplate: docTemplate, LeftDelim: "{{", RightDelim: "}}", } func init() { swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo) }